hello,
OK, the aim of this mail is to announce my new hardware synthesizer : http://nozoid.com/ocs-2 I already talked a bit about it on this list, but I did build a bunch of them and they are now for sale!
But since we are on the pd list, let me talk about pd, synthesis and things I learned while building an high quality, analogue style, digital synthesizer.
Here are 3 facts:
1) I often heard that pd sound badly 2) every user of the OCS-2 synth love its sound 3) I developed (and distribute) the equations use in this synth in pd before porting them to a hardware, so you can have the same sound in pd than in my synth.
So, according to fact 3, why do we have fact 1?
- Equations are not the only factor that "create" a sound. The way you control this equations is also very important. (see the "zipper" noise if you don't control the gain of an oscillator at audio rate).
In pd, the data clock is by default SR/64, I.E less than 1KHz. The "line" object usually output a value at 50Hz.
For my synth, data are computed at about 10HKz. This make a difference : LFO shapes are closer to the desired shape, and contain less aliasing artifact fast fader movement are more accurate ...
Fortunately, this can be fixed in pd : [line] can output value at faster frequency, and data rate can be increase by reducing audio block size. Moreover, this can be done only where it's important, and you can keep default value where speed did not matter.
- The precision of the control is also very important : in pd, fader precision are limited by screen resolution, and fader usually goes from 0 to 127. Shift clicking to increase resolution did not help if you want to move fast. from 20Hz to 20KHz, there is about 127 note, so don't expect micro-tonal resolution... A standard analogue system can easily have a S/N ration of 70dB, I.E a 12 bit resolution : more than 4K value from min to max It is also what the OCS fader provide.
Unfortunately, it's not easy to have good/accurate control in pd. But that's not really a pd limitation...
- The SR of the audio synthesis can also be important : the higher the SR, the more audio aliasing you can remove. And you don't need a 192K SR on your sound card, you can just oversample the part that need it in your patch, filter, and go back to a lower SR. But, better than trying to remove aliasing, it's better not to create it...
- After few thread about band limited oscillator, I still see some people using the [phasor~] as an audio oscillator. No offenses, but let me be clear : [phasor~] is a very useful object, but it's not an audio oscillator. Use one of the BL oscillator abstraction if you are looking for a sawtooth signal. Using phasor~ as an audio oscillator only to hurt ears.
So, if you know what you are doing and take few precaution, you should be able to make your patch to sound nice...
Now that i tricked you to read this mail, please, go to http://nozoid.com and buy hundreds of synths to make me rich, or just dozen so that i can pay my bill (it cost a lot to build hardware).
Well just sharing the website to your musician friend will help me.
thanks and cheers, Cyrille