| Steven,
Thanks so much for these great examples! They definitely remind me of the
sounds that I used to get out of a CZ-3000.
I am wondering how your method of interpolating between a piece-wise linear
phaseshaping table and the phasor's linear value compares to having
dedicated functions that calculate the (changing) phase transfer function.
I certainly had not considered this shortcut or I might not have started
writing PD opcodes. It is interesting because it avoids the need for a-rate
if-thens.
It seems to me that your method may be both more and less flexible. It has
much greater flexibility for designing one's own transfer functions. (The
blue interface for doing this looks amazing, btw, I will have to give it a
try!). But, I think you lose the ability to easily vary the "pivot points"
of the function both above and below the linear phase (which may not matter
if the input waveform is symmetric -- and I do not think the Casio CZs
allowed this either). And I am not sure the averaging works as expected if
the pivot point reaches either extreme (0 or 1) -- but that creates
discontinuities anyways. So for all practical purposes, the weighted
averaging seems like a simpler solution.
Should we reconsider including my PD opcodes in the next Csound release?
Another observation about phaseshaping versus waveshaping: there really is
no difference if the methods are implemented as lookups in static tables.
Basically, each is the composition of a linear phasor with two functions
(using @ for composition):
Phaseshaping:
phasor @ phaseshaping function @ stored wavetable
Waveshaping:
phasor @ stored wavetable @ waveshaping function
The fact that the stored wavetables are usually sine waves is arbitrary as
is the viewpoint of which table represents the "waveform" and which the
shaping function. Differences only occur if we admit other types of
modulation such as varying the amplitude of the input waveform to the
waveshaping table or creating a dynamic phaseshaping function.
Anthony Kozar
anthonykozar AT sbcglobal DOT net
http://anthonykozar.net/
Steven Yi wrote on 12/9/07 12:20 AM:
> I'm happy to announce the release of a new blue/Csound instrument
> entitled PhaseShaper. The instrument is modeled on the Casio CZ-101
> and it's Phase Distortion synthesis though I am calling it
> Phaseshaping as the operation is very similar to Waveshaping but done
> on a phasor and not on an audio signal.
> p.s. - I am currently planning on discussing the instrument design and
> phaseshaping in general in full detail in an article for the next
> Csound Journal.
-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net |