Instant Crossover Prototyping

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

I've attached a picture of a mono crossover implemented in the dsp of my dirt-cheap Audigy sound card using the kxproject drivers.

L-R 24 crossover, couple of parametric eq for baffle-step correction, a notch at tweeter resonance frequency, easy level and phase adjustment, and a fine-adjustable delay for time-alignment. Six output channels and enough dsp memory for a three way stereo crossover with many EQ and delay modules.

I'm driving gainclones direct from the output jacks on the soundcard.
Noise is almost inaudible at the loudspeaker with everything cranked up to full volume, even with radioshack interconnects, my dreadful soldering, and the soundcard living inside of my fire-breathing lunchbox computer.

I crowded all of the controls into a small area to get the screenshot but you can spread it all out on your screen. All of the controls can be adjusted in real-time with music playing through the crossover. You can save and recall crossover setups. I have run the crossover with measurement software and an even an RTA on the computer so I suppose that room correction would be possible if I cpuld find the time and mental-energy.

An Audigy1 dsp soundcard costs US$45.00 and the kxproject drivers are free.
 

Attachments

  • monocrossover.jpg
    monocrossover.jpg
    93.8 KB · Views: 3,240
Here is a setup with subwoofer. A crossfader control allows me to go back and forth from full range satellites only, to sat+sub+crossover.
My MLTL project speaker goes fairly low in its current location, and the nasty horn p.a. sub not much lower, so if I set levels carefully, I can drag the crossfader, bring in the sub+crossover, and just hear the vocals go from less-clear to more-clear.
 

Attachments

  • crossfader.jpg
    crossfader.jpg
    56.2 KB · Views: 2,477
bzdang,

Living in proximity to that nuke reactor doesn't seem to have affected your creativity. That is pretty darned cool. I just recently bought an audigy second hand to use in my sweep testing suite and have no idea what all it can do. Thanx for sharing this!
 
You're welcome
Yes, proximity has its perks - Lake Ontario is cold ! but on the Labour Day weekend the wind was southeast and blew outlet water from the power station onto the beach, it was warmer than our swimming pool, and breaking waves too! Mini-Me got to play in the surf for the first time. Free beach day courtesy of Ontario Power Generation.

There's a signal generator device in there. It's facinating to set it to 1 or 2 Hz and watch the woofers move.

The links:

www.kxproject.com

DriverHeaven.net - kX Project Audio Driver Support Forum
http://www.driverheaven.net/forumdisplay.php?f=67
 
Yes, those drivers are nice, specially the DSP panel, absolutely fantastic.
Be careful and don't run to buy the latest Live! souncard since is the model SB0220 and it's not supported yet. The audigy LS (the new and cheapest one) is not either, since it doesn't have the 10K1 chip.
 
Yes this is good stuff I agree. This software reprograms the dsp in creative soundcards which contain the 10k1 and 10k2 dsp chips originally created by EMU for their APS professional sound card. There is a list of compatible cards on the kxproject website. Creative bought EMU and used the dsp to produce a new product called the 'Live!'. Audigy products are decendants of the Live. As Raka pointed out, Creative is selling soundcards that exploit the Audigy brand name but don't have this dsp. Beware!

Easy and painless to implement but you do have to do some reading, part of the main website and at least the sticky posts on the support forum first. You will be replacing the creative-supplied software drivers and will need to have a clear idea of what you're doing.

You will be creating signal sources which might (and probably will) send max volume audio to your amplifiers at some point, and you might make mistakes which send low frequency audio to tweeters, so get some practice before hooking up powerful amps and expensive drivers. Computers have a habit of finding the most terrible things to do and doing them at the worst time (11:30pm when the kids are sleeping) so you have to be on guard at all times. I always run my computer volume controls loud and control volume outside of the computer so that I don't get any surprises.
 
Response to question posted in this thread -
http://www.diyaudio.com/forums/showthread.php?s=&postid=494396#post494396

m0tion said:
Sorry to hi-jack this thread, but I've got another question regarding this project. Let me give you a little background info:

I had planned on moving a PC into my home theater to use for some music and dvd playback, games, etc. Also I plan to build a pair of 3-way active crossed main speakers (read Left and Right) to be used in my theater. I would be using my Hercules Fortissimo III card for audio playback (and the SP/DIF out to my reciever for DD/DTS playback).

Is this possible?:

Install a creative card as well and use the input on the creative card to take the output from my recievers pre-outs for the Left and Right main speakers, and use the kxproject to output that material to the 6 outputs of the creative card and use it as a 3-way stereo crossover, all without disturbing the Hercules Fortissimo setup. To state it another way, I want to use the kxproject with a creative card inside a computer where no other programs would use the creative card, they would all use the Hercules card.

Again, pardon my interruption and thanks for the advice.


Thought it would be best to respond here.
I'm perhaps a year away from setting up a home theater so I haven't investigated these issues yet.

I made a simple test tonight, hooked up an external audio source to the line in on my creative audigy card, set up the dsp to route line-in through to the outputs, and music came out of the audigy. Then went to the windows control panel, sound and multimedia, and I switched the 'sound playback preferred device' to my onboard soundstorm audio, started an internal audio source (iTunes), and music came out of the onboard audio system (and the audigy system was still playing it's source).

So yes I can process external sound sources with the audigy while using another soundcard as the default device for playback. For example analog output from the soundstorm system to the analog input of the audigy system, where a dsp crossover could be operating.

YMMV, and I recommend an audigy2 card if you want to use the analog inputs, as the audigy1's AC97 codec (which handles analog inputs) is noisy and was improved upon in the audigy2.

Audigy + kxdrivers supports 5.1 surround sound, and it may be possible to pass the full digital surround sound through to your receiver while also processing front left and right channels through dsp crossover and out of the soundcard analog outputs. Complicated to implement perhaps but that's what winter evening are for.
Read the driverheaven forum, try some things, and post your results!
 
Yes, of course. I do not expect professional studio-level hardware for $45.00 but I hope to learn to build speakers worthy of an upgrade to the source electronics. The hardware and software engineers at EMU made excellent choices in terms of performance and cost of implementation, see the links to their patents on the kxproject website for more information. The system described in this thread does represent extraordinary value and very good performance, so let us not discourage people from trying it.


From this document...
http://people.freenet.de/kxdev/docs/original/emu10k1-overview.pdf

ASYNCHRONOUS DIGITAL AUDIO RECEIVERS
We designed the EMU10K1 to receive digital
audio directly from devices such as CDROM
and DVD drives. However, the sample
rate of compact disc audio is 44.1 kHz, and
the EMU10K1 output sample rate is 48 kHz.
Due to manufacturing tolerances and drift,
the clock frequency of each compact disc player
differs slightly. Even if the output sample
rate were also 44.1 kHz, the slight differences
in clock frequency would cause the relative
phases of the input and output sample rates
to drift over time, eventually resulting in
repeated or dropped samples.
It is possible to force the clock frequencies
to be exactly synchronous by using a tracking
phase-locked loop, or PLL, rather than a fixedfrequency
oscillator. Professional recording
studios distribute a master clock to all interconnected
digital audio devices, which derive
local clocks from the master. This guarantees
synchronicity of all digital audio streams. This
approach is expensive and difficult, requiring
PLL-based synchronization capabilities in all
digital audio devices. Devices that cannot synchronize
to an external clock source must
become the master clock source. This is a distinct
disadvantage as there can only be one
master clock at a time.
A better solution is to use sample rate conversion
to resolve the incoming sample rate to
the output rate. This requires a sample rate
detector that continuously updates an estimate
of the asynchronous digital input rate. The sample
rate estimate maintains a phase accumulator
that controls a 16-point Smith-Gossett2 sample
rate converter. Such an asynchronous sample
rate converter avoids the cost of a tracking PLL
and provides support for multiple, simultaneous
asynchronous audio streams. The EMU10K1
can support three simultaneous asynchronous
stereo streams using high-quality asynchronous
sample rate conversion.
 
for bzdang and m0tion:

back a bit, m0tion launched a question and bzdang was kind enough to provide some inspiration. i wonder if bzdang could take a second shot and help me find the end of the string so i start in the right place?

here's a goal statement:

add room correction to a home theater setup using an 'htpc'; and i would like to do this in 2parts:
1. add low frequency correction, and possibly include the type of subwoofer compensation (an integrator) to drive the sub below it's resonant frequency as in the bag end elf or the esp module
2. add mid/hi correction (perhaps better called eq) to compensate some for the ceiling speakers

my current configuration is as follows:
1. 7.1 setup: 2 front, 2 side, 2 rear, center channel, subwoofer
2. sony dvd feeds a lexicon dc1 and then into a parasound 6ch amp, a crown d60 is udes for the center channel, and a yamaha amp is used for the subwoofer. a motley collection to be sure, but it is what it is.
3. did i mention that for marital safety, the speakers are in the ceiling: partsexpress 29.95 a pair -- 6" woofer w/a center mounted 1/2" dome devil

a few statements about my choices:
1. the stuff came by way of favors owed to me (some favors were big)
2. the speakers in the ceiling -- well that means no cables on the new rug. but actually, some lexicon engineers said that if i kept all the speakers and all the amps the same, i would have a coherent sound. better speakers, better amps, better sound, but it was a place to start and it fit the budget.

so now, to the question and the search for the end of the string: i've seen the threads on brutefir, drc, and the new module from patrick cazeles (acxo). it seems the ingredients are all here but i'm not sure where to start. from a hardware perspective though, it seems that (assuming i could understand and get all the software to work) what ineed to do is sort of like this:

1. feed the 7 channels of output of the lexicon into several audigy cards
2. get the room correction work on the ceiling speakers (using them full range)
3. and then go to the amps
does this mean at least 3 and 1/2 audigy cards?

4. take the front outputs from the lexicon, before the room correction, and derive a signal to feed the 'bag end emulator'; the emulator is the integrator circuit and something to eliminate the mids and highs. i would follow the strategy used by bag end
5. make this work
6. then do low frequency room correction
does this mean another audigy card?

then i remove the parasound/crown and do chip amps, and remove the sony with an internal dvd drive on the pc.
this should take, what, a weekend?

am i finding the end of the rope, or am i pi..ing up the rope?

some clear thinking here would certainly help me out. if this is at least feasible, i'd break this down more clearly into real portions to fit together and be able to get done a little at a time.

anyway, thanks for hearing me out
 
Oh man I am swamped this week with work but here are a couple of things to ponder and look at.
First, I haven't done much with home theater setup, mostly I listen to stacks of old jbl drivers in diy systems, so I can only give some clues based on my limited experience.
I haven't learned anything yet about drc, but my favorite audio engineer has known the man at www.etfacoustic.com for around twenty years and respects him so give that a try.
And I don't own one of the newer 7.1 capable audigy2 cards yet so I can't test to see how things work. But the latest version of kxproject drivers is in beta and has initial attempt at support for 7.1. If it works, you should be able to play dvd 7.1 surround sound within your computer and route all of the channels directly into the dsp soundcard for processing without going analog until you hit the lineouts to the amps. I assume that the ceiling speakers have passive crossovers, else you're going to need alot more channels and amps!
Regarding the sub, if it goes too deep it may annoy your wife, just my experience, mine tends to be underwhelmed by such things.
You may find that it all works quite well with room correction and a 24db/oct dsp crossover on the sub (which is included with kx). I'm told bass traps are good things as well, and you can make your own.

Here's a link to the basic a2 card, no need to get anything expensive, a white box oem version will do. Note that the Audigy LS soundcard does not have the 10k2 dsp chip and is not useful for this purpose.
http://www.creative.com/products/product.asp?category=1&subcategory=204&product=10653&nav=2

You should be able to get it all running quickly on a weekend, but I imagine it will take longer to measure the room interactions and tweak the system.
I'm out of time tonight but will be happy to help out.
 
This is some bodaciously awsome stuff. Naturally, the first thing I think of is wrapping up the C++ API as a Python extension. :)

The Audigy folks should be paying you big bucks. Imagine how many sound cards people like me will fry and replace with new ones. Let's hope CTL doesn't pull the rug out from under you too often.

Okay, if this is a hopelessly moronic question, I'm sorry.

Once the DSP is programmed, what does it need for life support? Asking the question the other way, how much of the PC could you remove and allow the sound card to keep functioning as, for example, a crossover component?
 
First I have to correct my earlier post, I was reading the support forum tonight and it appears that the 'value' card is not a good choice to use with kxproject drivers.
So for 7.1 applications you should look at the audigy2 ZS - -
http://www.creative.com/products/product.asp?category=1&subcategory=204&product=4915

For 5.1 or six-channel active crossovers the inexpensive audigy1 and 2 cards will do nicely.

Read the forum for up to date info!
http://www.driverheaven.net/forumdisplay.php?f=74

I'm just a humble user of the technology. After watching my coworkers use a omnidrive and then some audio dsp development kits, I became interested in the technology. I suspected that the audigy soundcards were waking up empty and getting loaded with their software on boot-up, just like most any dsp does, so I searched for 3rd party drivers and found the kxproject. It's a device driver with a graphic user interface that lives in the tray. It still works if you shut down the UI, the work is all being done on the soundcard, sort of like a geforce video card where 3d transformation and lighting is being done in hardware. No load on the cpu except for your media player if one is being used. External audio sources just run thru the soundcard without any work at all from the computer. You can run Ironcad and Martins mathcad sheets and play iTunes and snipe on eBay all at the same time without getting sound glitches. It can save configurations with a filename, and it also remembers the most recent config. and reloads it on startup.

The hornguy goes bananas when he visits - add a notch at 8k! wider! a little lower. now boost the level on the tweeter, more, now make a broad peak at....

Been using this with an rca1428b, a hda high-eff. 10" midrange and lab12/uglybox, and it's just startling how quickly one can tweak it into verygoodness. I can change over and run my TL 2way in 30 seconds more time than it takes to move the speaker wires to it, because I saved the settings. I can cure the vile fostex drivers with instant bsc and midrange correction.
I'm such a rookie at speaker design and building, but now I can do more learning in one weekend than a whole month of messing with passive networks.
cheers from the kxproject evangelist ;)
 
Hi, great news that you're giving this a go.

I got the baffle step by using 'EQ P1 (Mono)', selecting 'Hi S-shelf' from the pull-down list, and setting the gain knob negatively to cut above the bs freq. The BW knob is, I think, a variable slope control, it looks good to me at around 1. Frequency setting depends of course on baffle width. I use another P1mono to attenuate the tweeter and flip its phase if required (there's a little phi? gizmo above the main level control on the P1mono).

For time-alignment someone on the kxproject forum wrote me a 'simple delay' which I use and have a zip file around here somewhere. Send me a hotmail address and I'll mail it to you (or anyone, the fellow included source code in case we wanted to modify it.
 

Attachments

  • screenshot2.jpg
    screenshot2.jpg
    84.3 KB · Views: 757
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.