For the DSP crowd: Something I've been kicking around

GroupDIY Audio Forum

Help Support GroupDIY Audio Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

Consul

Well-known member
Joined
Jun 3, 2004
Messages
1,653
Location
Port Huron, Michigan, USA
[New draft posted below]

The whole idea is that this "morphing function" concept (I couldn't think of a better name) is atomic in and of itself, and yet can be used to re-create any control structure commonly used in software synthesizer and samplers, including envelopes, LFOs, and even oscillators. Of course, new and complex control structures can be made without needing to be specially coded into the engine.

This is a first draft, and no doubt lacks some clarity, and I've glossed over some details until I can figure out how to draw some illustrations. I'm looking for some feedback before I submit this to the Linux Audio Developers crowd, who can be some real critics at times. :wink:

Thank you for your time!
 
Interesting exposition.

Since Bézier curves are mostly viewed as exisiting in space, and used primarily for computer graphics, I don't know if much spectral analysis has been done. For properly causal curves strung together it would be curious to see what things look like in the spectral domain. If you're looking at them as enveloping functions, i.e., with plenty of time in between given events, the spectral content is maybe less important/relevant.

BTW I believe the first exponent on page 6 should be a 3.
 
Actually, the Bezier curves are just there as an example of what can be done with these atomic "morphing" functions that would require no new code in the engine of this hypothetical softsynth. Bezier curves can and have been used for oscillators in software synthesis, though, and I found two papers on the subject, and one currently available VSTi plug-in here:

http://www.stillwellaudio.com/?page_id=37

To be fair, it's the finding of this plug-in that gave me the impetus to research Bezier curves for waveform generation, but it's still only a small part of what I'm trying to sell here.

As to the exponent, if it is wrong, I'll fix it as soon as I boot back over into Linux, which means after I get my homework for school done.
 
Comment: what I like about your musings lately is that you are giving yourself motivation for really digging into the maths. It's so often otherwise---one is locked into a curriculum fashioned by presumably older and wiser academicians and told to take their word that what's presented will be helpful someday. Hard work and patience may be rewarded eventually, but often the material is nearly forgotten by the time it's needed for a real world situation.

It reminds me a bit of another guy I knew early in life, the now-famous computer scientist David Chaum, who, circa 1970, at the age of 16 would show up at my house to present his design of a music synthesizer. His creativity was boundless and well ahead of his knowledge base. He was profoundly disappointed when I explained that Western music was almost exclusively based on equal temperament rather than just intonation, which meant his synth concept was fatally flawed.
 
Really, what I'm trying to get at here is the concept of the design of a feature which can, when used in combination with itself, be used to re-create every modulation feature of a synth or sampler that one could want. Then I try to describe a way that this function can be exposed to the user. The thing with the Bezier curves is a flight of fancy to show how the same logic can work for things other than modulation.

This idea is not without precedent, as the concept of key frames and control functions for defined paths is a very common one in 3D animation, where they are combined in the same ways as I describe.

Thank you, Brad. I appreciate your feedback, and for the opportunity to "defend my thesis" as the case may be. :grin:
 
[quote author="Consul"]
Thank you, Brad. I appreciate your feedback, and for the opportunity to "defend my thesis" as the case may be. :grin:[/quote]

I'm glad you are appreciative---in re-reading my posts I was concerned that I sounded a trifle patronizing, which was not the intent.

The recursion angle is always great fun. My CUNY math/comp sci friend Florian Lengyel is a category theorist and recursion maniac.

When I was writing music a fair amount I often used various canonic structures, just to see how far they would take me. The resulting material should have been ultimately used as raw material for a real piece rather than the piece itself, as the results otherwise had way "too many notes".
 
I'll definitely be updating my paper (for one thing, I need a better citation for the cubic curve equation) as soon as I'm done with my real homework. I'll post the second draft when it's done.
 
Here's the second draft:

[removed]

Hopefully, it clarifies a bunch of stuff.

PS - You were right about the first exponent, it should be a three. It's fixed now.

EDIT: There is now a third draft:

http://www.twin-x.com/groupdiy/albums/userpics/Parameterization-Draft3-Landrum.pdf
 

Latest posts

Back
Top