[LAU] Hardware synths

David Olofson david at olofson.net
Sat Dec 1 18:23:42 EST 2007


On Saturday 01 December 2007, Gordon JC Pearce wrote:
[...]
> > ...but that would require playing the *exact* same sounds on both 
> > systems, which is pretty much where the very problem is here: The 
> > hardware synths tend to use secret, proprietary algorithms.
> 
> "Algorithm" implies it's a software synth anyway.

I didn't really intend it to be read that way. Maybe it's just too 
obvious to me that it doesn't matter if you do it in parallel or in 
series, as long as it's digital. :-)


> A softsynth running in an FPGA or DSP is not a hardware synth. 
> Well, not in my book anyway.

Well, it depends... But anything you can do entirely inside an FPGA 
*can* be implemented as "normal" software on a CPU. It man not be 
terribly efficient (CPUs suck at truly parallel processing), but 
we're concerned with the final results here, I think.

I'd say a true hardware synth is something that uses multiple variable 
rate DAC and other semi-analog or analog stuff that you can't 
replicate purely in the digital domain. The SID chip falls in that 
category, for example. (Digital oscillators, analog mixer, analog 
resonant filter, IIRC.) Didn't some early Ensoniq synths use a 
similar approach? (Per-voice DACs, that is.)


[...]
> > And, if you find a softsynth inferior to some hardware synth due
> > to resolution issues, recompiling it with 'double' sample and
> > control values would allow it to beat most hardware synths flat to
> > the ground in that department, I'd think. Or why not 'long double'
> > while you're at it. ;-)
> 
> It depends on the software involved.  Great though Novation stuff
> is, it aliases terribly (for instance). Nice filters though. 

Ouch. The first thing I look for when hacking my own oscillators is 
distortion when playing pure sine waves all over the frequency range. 
If that sounds crap, everything will sound... well, at least not as 
clean as it should. If it's not too bad, it might be ok for some 
sorts of sounds...

Anyway, I was assuming here that the algorithms would be identical 
apart from the sample resolution - so the aliasing would be the same. 
You'd just get more accurate aliasing with the long doubles. ;-)


//David Olofson - Programmer, Composer, Open Source Advocate

.-------  http://olofson.net - Games, SDL examples  -------.
|        http://zeespace.net - 2.5D rendering engine       |
|       http://audiality.org - Music/audio engine          |
|     http://eel.olofson.net - Real time scripting         |
'--  http://www.reologica.se - Rheology instrumentation  --'



More information about the Linux-audio-user mailing list