How do people come up with digital effects?

Started by Mark Hammer, April 22, 2019, 11:47:47 AM

Previous topic - Next topic

Mark Hammer

I don't mean how do they physically implement them.  Rather, watching demo videos for a recent reverb/ambience pedal, I thought that it wasn't the same sort of thing as taking a known analog fuzz and tinkering to make it do an additional trick (the ZVex Fuzz Factory is a textbook example, here).  Rather, what I see cropping up in the DSP-pedal universe is increasingly things that simply don't, and probably can't, exist in the analog world.  And if they do, it may well be something that requires a 24-module Eurorack assembly and 40ft of patch cables to achieve.  So, not the sort of thing you randomly stumble onto, mistakenly sticking a CV plug in the wrong jack.  Or is that the spark?

Which makes me curious about the thought processes that give rise to some of the things we're beginning to hear, coming out of 125-B and 1590D boxes.  How do people come up with interesting new DSP sounds?

cloudscapes

Since I started playing with eurorack 5 years ago, I have had loads of new ideas for crazy modulation routing in pedals!  :icon_mrgreen: Borrowing ideas from the synth world is part of it I'm sure. As well as music genre trends.
~~~~~~~~~~~~~~~~~~~~~~
{DIY blog}
{www.dronecloud.org}

Mark Hammer

I guess what I'm more mystified by are those sorts of sounds that, when you listen to demos, you think "What would I even use that for?". 

That's not to dismiss such sounds entirely.  But musique concrete composers are generally not who pedals are marketed for and to.

On the other hand, there are tons of things that sit far enough in the background of mixes, that maybe we don't even notice that they're there.  In other words, they're useful, just not in ways that are as obvious as the more traditional analog effect categories.

cloudscapes

#3
If I had to pick, I would say I am part of the "musique concrete" scene. :icon_mrgreen: But I'll also include other labels next to and inside of that, ambient, drone, electroacoustic, noise, the various post-rock/post-.... derivatives, straight up electronic, etc. Most are niche, but together that's quite a lot of people. Especially if you include post-rock in that, those shows can attract thousands if the venue supports it, and depending on the band.

If you are a boutique maker who doesn't supply in the hundreds of thousands but "merely" tens of thousands, there are plenty out there who will love these kinds of effects in my experience. But then again, I include myself as one of them, so maybe a bit biased?

~~~~~~~~~~~~~~~~~~~~~~
{DIY blog}
{www.dronecloud.org}

Digital Larry

I've done DSP design consulting for both guitar effects and modular synthesizer manufacturers.  Guitar effects are pretty conservative by comparison to the modular world.  One of the angles that I think is worth exploring is to REDUCE the adjustability of certain things to give them more personality of a specific character.  For example, I prefer really slowly sweeping chorus and flanger to the wobbly Leslie type sounds.  So you could come up with a pedal that didn't have the full range of adjustments possible for the chip you're using.  Having a delay pedal that specializes in slapback sounds is one example where you have a second of delay available but you only use about 150 msec tops.
Or you add adjustments that often aren't there such as a high pass or whatever.

I sort of see things from a different perspective.  Lots of basic building blocks for DSP effects are just time delays at various lengths, although I will admit that reverb algorithms will make your head spin a bit.  But I don't see anything really "new" as far as the basic blocks.  Then you have other things such as ring modulation, aliasing, bit depth reduction, etc. that don't always create a pleasant sound but can be used for 5 seconds in a piece to make it interesting.  Doesn't mean that every band is gonna have one though. 

One nice thing about some development environments is that you can easily simulate/audition sounds without ever committing them to hardware which makes it a lot easier to try all sorts of different combinations without ever lifting a soldering iron.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

Digital Larry

#5
I mentioned it before, but if you are at all interested in digging deeper, you might want to check out some of these online classes.  They are free.  It might be a bit daunting if you've never programmed before, and the online aspect of it makes it hard to directly get help sometimes.

This one focuses on "physical modeling" which is mathematical simulations of things like ceramic bowls, open and closed tubes, plucked strings, metal bars and plates.  https://www.kadenze.com/courses/physics-based-sound-synthesis-for-games-and-interactive-systems-iv/info

This one teaches plug-in programming directly in C++, which IMO is extraordinarily tedious and error prone, but you do gain (cough) flexibility: https://www.kadenze.com/courses/intro-to-audio-plugin-development/info

That one assumes no DSP theory background and they get as far as teaching you about delays and choruses.

Next up (I'm taking this one now) is the "Faust" language which lets you build up functions either from basic operations or use a large library of prebuilt blocks, many of which are guitar oriented.  https://www.kadenze.com/courses/real-time-audio-signal-processing-in-faust/info

Faust's libraries appear to be built from the synth toolkit:  https://ccrma.stanford.edu/software/stk/

Faust also easily allows you to build for different targets such as VST, AU, mobile phone apps, Pure Data, etc.

Anyway, you are still mostly dealing with one or more of the following:
a) Time delays
b) filters of various kinds
c) non linear processes (which create frequency components not in the original signal - either harmonic as in distortion or inharmonic as in ring modulation)

Even though I studied DSP theory back in the distant past I try not to get bogged down in the math part of it (which abounds because all these guys are Stanford PhD types) and focus more on the building block aspect of whatever I'm trying to accomplish.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

Mark Hammer


Digital Larry

Haha, no worries MH.  You asked "how" it was done and so I think this is "how" most people today go about it.  Very little time is spent truly inventing some new low level process and most of it is developing creative combinations of things which already exist, as in your original analog premise. 

One recent exception I can think of is the Electro-Harmonix line of keyboard emulators which AFAIK use an FFT to deconstruct the guitar spectrum in near-real time and then resynthesize it with the sound spectrum of an organ or some other instrument.  I don't think that is actually a new thing either, it's built up from a thing called a "phase vocoder" but E-H obviously invested some R&D into it and took advantage of higher CPU powered embedded processors coming on the market.  As a player, I am not interested in those (because it still sounds like my crappy guitar playing), but as an engineer I just say "wow".

The other thing you have to do to have a viable commercial product these days is to have a marketing campaign that ties its sound back to the golden era of rock and roll.  In fact, if you have that, you can probably sell plastic kazoos at a significant markup.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

Rixen

I believe some people, especially creative/artistic individuals view and experience things in fundamentally different ways. They can easily imagine and therefore create things that the *rest* of us would never think of thinking of.


gmaslin

A peek in this thread might give you some insight on where the ideas for pedals originate.

Digital Larry

#10
Quote from: Rixen on April 29, 2019, 05:21:44 PM
I believe some people, especially creative/artistic individuals view and experience things in fundamentally different ways. They can easily imagine and therefore create things that the *rest* of us would never think of thinking of.
It also depends on the tools one has available.  You can use MS Paint to set individual pixels in an image to whatever color you want.  Yes, it can be done, but... for some reason there's a market for things like Photoshop.

This is my analogy for developing DSP effects by directly writing code.  I hate it and only do it as a last resort.
Digital Larry
Want to quickly design your own effects patches for the Spin FV-1 DSP chip?
https://github.com/HolyCityAudio/SpinCAD-Designer

markseel

#11
I agree. Working at both the higher level audio path and sound/effect design level (creative) while dealing with low level coding and DSP theor/math is really difficult to do at the same time. Counter productive I'd say as one sort of disrupts the other. And I also agree that the DSP blocks (delays, modulation, non linear stuff, resampling, filters of so many kinds, etc) are well understood and defined.  The math has been done, the blocks have been characterized and parameterized and they haven't changed much since they're inception.  So when creating effects it really makes sense to use a high level tool (graphical, existing DSP blocks) so you can see the flow, visualize the effect, and iterate quickly through your ideas. I personally like level coding but it's definately hard to work through the sound design and audio flow at the same time. I also think that some folks have so much experience with so many pedals and synths that they are able to visualize a sound design in terms of these blocks. For the Chase Bliss Blooper we have Knobs (https://www.knobsdemos.com/) as the sound designer; he has the experience and he describes it to me and I then do the XMOS DSP coding. I can't do his job and he can't do mine because they require such different skills and experiences. If he had a better tool he wouldn't need me and he could move a lot faster when considering new ideas since it takes me a lot of time to get the low level code in working order.  Yeah, we need good high level tools to facilitate and empower the creative aspect of effects design :-).