[sdiy] digital synth design.
phillip m gallo
philgallo at attglobal.net
Wed Oct 27 18:22:36 CEST 2004
If your goal is to make music using sampled technology you'll find you
can buy it cheaper and easier than constructing a sampler circuit.
You'll go straight to making music and just get used to the quality of
samples (which occasionally can be quite good). As previous post's
indicate the "extra" capabilities (modulation/velocity mapping..etc) are
where you can find some form of orchestrational freedom of expression.
However, you will gain quite a useful education designing one your self.
The length of time associated with this learning will depend upon your
experience, creativity and receptivity.
My first sample playback project was done in the '80's with an 8751 and
256x16 DRAM memory, and 12 bit ADC/DAC. The sample rate of 32kHz and
it's resulting 8 second sample depth (used as two 4 sec samples) were
consistent with std. offerings of the time and it sounded better than
most ( i did wrapped an NE572 compander around the beast).
It's much easier today. 16 bit DACs are easy to get and apply and damn
fast micro's in DIP and PLCC are still available (i.e. DS'420/430/450).
Also other processor are available in a variety of "eval" board formats
that could easily be used as the "core" of your project (you have to
partition the analog anyway) check into the MSC1211 (and others). There
are some fine DSP eval boards and ADSP2181/2191 will not be unfamiliar
to someone who has brought up a variety of other micro's.
As noted in previous posts, memory is more likely to set the upper limit
of capability and flexibility as so much can be "pre-computed". CF
card interfaces are straight forward and many examples exist
implementing them with micro's.
As to the education you would embark upon, Issues of looping at zero
cross, deterministic processing, rounding and interpolation happen in
progressive phases where each new step energizes you to do the next.
When you play you first sample back using the simplest of "front to
back" routines you'll be very impressed with yourself. If you self
sample you'll find a quality of realism and individuality that changes
how you think of sample playback.
regards,
p
-----Original Message-----
From: owner-synth-diy at dropmix.xs4all.nl
[mailto:owner-synth-diy at dropmix.xs4all.nl] On Behalf Of ChristianH
Sent: Wednesday, October 27, 2004 7:28 AM
To: synth-diy at dropmix.xs4all.nl
Subject: Re: [sdiy] digital synth design.
On Wed, 27 Oct 2004 15:51:19 +0200 (CEST) Rainer Buchty wrote:
> >I think software isn't that much of a problem (unless you are a pure
> >hardware man) - as long as the patch structure doesn't involve much
> >synthesizing and processing, i.e. mostly sample playback.
>
> Ah, but here the fun starts already:
>
> (1) raw wave parameters
> - original tuning
> - start position
> - end position/length
> - loop point (if not "sample end=loop end")
> - multisample zones (you don't want to play that 512-byte SAWUP sample
> all the way up to key 127)
Ok, all in all this surely isn't a trivial project, but it looks as if
there's nothing really impossible in it. And you're right, it really
could be fun :-)
> (2) patch parameters
> - selected waveform(s)
> - coarse tune (octave/semitones)
> - fine tune (cents)
> - pitch modulation (pitch bend, pitch EG, pitch LFO, maybe eben
audio-FM
> from a second osc) and amount
> - one-shot vs. looped playback (not to mention forward/backward
> looping)
> - hard-sync (for multi-osc voices)
> - address resolution
>
> At a later stage, amplifier and filter -- synthesizing and processing
> -- will contribute even more mess for example, the program control
> block of ESQ1 and SQ80, i.e. their patch parameters, are 102 bytes per
> sound.
>
> This includes 3 oscillators, 4 EGs, 3 LFOs, 3 DCAs, VCF, final VCA and
> panning plus some additional control stuff (sync, AM,
> splitting/layering, envelope mode, oscillator restart, voice reuse,
> mono mode, portamento) including the necessary modulation routing
> (source & amount).
Well, that's what I separated from the basic sample playback part, as
kind of an encore. Mostly dispensible for pure sample playing, but of
course nice to have.
> Next question is if you want to burden all playback onto the
> processor, or if the processor only becomes master control where
> playback is done by either a (bunch of) slave processor(s) or some
> dedicated hardware circuitry (counters clocked with variable frequency
> or phase accumulators).
>
> And, while doing this, consider introducing interpolation to avoid
> nastily squeaking phase-accu based oscillators.
Utilizing a software approach, that's what I'd do anyway, using a fixed
output sample rate and transforming the time coordinate into a sample
readout offset.
AFAIK, early hardware samplers like the Fairlight always read the memory
samples sequentially word by word and transposed into variable output
rates, using variable clock frequencies.
Bottom line is - it may be feasible in theory, but having a day time job
and not doing sdiy full time, the total project would probably take
prohibitively long to complete. But, it's not that I never did sketchy
considerations how to make a sampler... <gr>
Christian
More information about the Synth-diy
mailing list