Implementation of a cheap 'digital' speaker

Last Updated: 27 August 2000

You may be perhaps wondering why this isn't under the Hi-Fi section, but when it comes down to it, most of the hard work is writing the software. But first, an outline of the plan...

Quite simple really, take a good quality set of 2-way speakers, and remove the crossover. Then attach a dedicated power amp to each speaker, driven by a dedicated DAC which is fed from a digital crossover. This dodgy diagram should explain things better...

Why go down the digital crossover route? Well, the main reason for this is the sheer configurability it gives you over your setup, with the possibility to tweak the sound to your preferences in a manner which would not be normally possible, like setting the crossover slope and point, altering the produced frequency response, matching driver output levels with precision, and compensating for inherent physical flaws such as cabinet resonances and phasing errors.

Sounds nice, doesn't it?


Current Status

Thesis Report: Handed in, for better or worse
Overall program structure:
Flushing needs work
Data structures:
Just the parameter handling still to do
Error handling:
Better, but still needs work
Block handling:
Slightly more optimised
Buffering:
Seems to work fine, though latency is still a little high
Stage 1:
Basic WAV reader in place, upsamplers mk1, mk2 and mk3 working, WaveInput working
Stage 2:
Nothing but passthrough
Stage 3:
Generic IIR filter routine, with delay capability, aligned FIR filter, subtractive filter with delay
Stage 4:
Downsampling filter (IIR) operational (obsolete)
Stage 5:
Basic file writer outputs raw 32-bit float data, WaveOut module with support for rect. and TPDF dither, also now supports ASIO.

(for a description of the different stages, take a look at the "program structure" link below)


Descriptions

The Speakers - Upd: 27th Aug 2000

The Power amps - Upd: 22th Nov 1999

The Soundcard / Compatibility - Upd: 27th Aug 2000

The Client - Upd: 16 May 2000

The Crossover Types - Upd: 13th May 2000

The Crossover Analysis - Upd: 16th May 2000

Program Structure - Upd: 9th Jan 2000

Upsampler work - Upd: 13th Feb 2000

Final Product? - Upd: 22th Nov 1999


Other Stuff

Download - try out the test version for yourself

Progress Log (old) - my local log... usually out of date...

Listening List / Room (old) - information about the listening measuring room being used, and the music being used to gauge performance.

Listening List / Room (old) - information about the listening measuring room being used, and the music being used to gauge performance.

Fabric dome coating - some experimental work on coating fabric domes to improve their sonic characteristics


Back to the main page