Loopy Pro: Create music, your way.
What is Loopy Pro? — Loopy Pro is a powerful, flexible, and intuitive live looper, sampler, clip launcher and DAW for iPhone and iPad. At its core, it allows you to record and layer sounds in real-time to create complex musical arrangements. But it doesn’t stop there—Loopy Pro offers advanced tools to customize your workflow, build dynamic performance setups, and create a seamless connection between instruments, effects, and external gear.
Use it for live looping, sequencing, arranging, mixing, and much more. Whether you're a live performer, a producer, or just experimenting with sound, Loopy Pro helps you take control of your creative process.
Download on the App StoreLoopy Pro is your all-in-one musical toolkit. Try it for free today.
Confused about wavetable synthesis
Having picked up PPG Infinite and Scythe (wavetable version) over the weekend, I am trying to wrap my head around exactly how a wave table is generated, and how it relates to the original sound on which it is based, say an imported audio file. (Scythe can do this, I think Nave too).
My guess would be that the source files is evenly divided into some number of shorter waveforms (maybe 256) each of which represents a snippet of the original source sound. In theory, the original sound could be recreated by combining all of the wave table entries back together in the original order.
If this is in fact what happens, is it possible to recreate the original sound in Scythe, for example, by cycling through all the waves at the proper speed with no distortion / effects added? I ask because starting with a recognizable sound, then starting the process of warping, would be a clear way to understand what is going on. Loading a wave then having it sound robotic is more confusing, at least to me.
If anybody knows how these things actually work, that would be terrific. Thanks!
Comments
You‘ve got Nave? That’s pretty much it.
If you import a wav into Nave it gets processed into a wavetable. Now, if you take a look at it and play with travel you can hear the original wav. SOmetimes slower and more warped, sometimes exactly right. So it kinda gets chopped into its frequency-information.
What confuses me though is the fact that Nave can import single-cycles. So I have a WT-Sample of lets say a Juno, import it in Nave and have in fact a Juno. Kinda.
But Scythe only lets me import 2-6 second wavetables. They are then „evenly“ spread onto the WT, as if Scythe reads the information left-to-right, back-to-front.
It’s just my point of view.
That’s not how it happens. The original idea of a wavetable synth (and we have to be careful of the terminology here, as it departed and went two ways, both of which think they’re the correct one) was to do a lot of the things that analogue synths can do with ease and which early digital synths were having a lot of trouble making their efforts sound decent enough to be acceptable. Typical among these were a resonant filter sweep, although that’s certainly not the only reason they exist.
In analogue synths, a voltage-controlled low pass filter can be made to resonate, or at least come near to resonating, and therefore be a bit “peaky” in response, readily adding select harmonics to what is going through the filter, even though the point of a low pass filter is to reduce the amount of harmonics as the sound passes through (ie, it filters, hence the name). You know the classic filter sweep sound. Well, early digital synths (and some modern ones) which relied instead on calculating the effect of a filter rather than actually having transistors and resistor/capacitor ladders inside, gave a not exactly ‘analogue’-ey sound, which was disappointing to most people. Even the early Korg digital synths pretty much gave up trying to do a resonant digital filter, hence the M1 and a lot of its descendent basically don’t have a filter to speak of.
Okay, imagine you could sample an analogue filter sweep on an oscillator source? Or even calculate a very carefully crafted non-real-time digital filter in effect on an equally digital oscillator source, which everyone would agree sounds good enough to do the job (except it wasn’t real-time, it took forever to calculate). It would be possible to “sample” it, but not as a continuous slab of sample memory, and then another and another for each note of each frequency and velocity and duration you might want (memory in those days was small and expensive). But imagine instead you could sample a filter sweep such that a table of wave calculations began with the effect of a single cycle of wave, corresponding with the sound of a filter closed and ended with the equivalent wave of a filter open (or the other way round). You’d have a table of wave cycles, each of which could be run continuously to get a usable workable sound on its own. But, a fairly static non-changing non-modulated sound. A lot of sounds are like that, so it’s not a bad thing. However, we’ve got a table full of single-cycle waves, each one is slightly different from its neighbour.
If, as we’re playing the tone, we also step sideways a bit, and a bit more, and a bit more, to progress through the table of waves instead of staying on the same one, we have the equivalent of an oscillator that can be made to change the harmonic content simply by travelling through the wave table as the single cycle waves are continually scanned to form the oscillation. Which wave we’re currently on depends upon the modulation parameter - no modulation, and we’re on the first wave cycle, over and over. More modulation, and we’re more likely to be repeating a cycle that’s somewhere further into the table. Change the modulation (eg with an envelope or an elephant, I mean, an LFO) then we end up modulating our way up and down the wavetable as one wave or another is being constantly read out to form our oscillation.
If the wavetable consists of a simulation of an increase in harmonic content, we can ‘sweep’ through it as if we were sweeping a filter open or closed. That way we have a totally digital synth that can sound technically like an analogue, but on the cheap, and in real time.
But what if we break the rules and put other stuff into the wavetable other than harmonic progressions and sweeps and transitions (of which we can calculate far more than a simple analogue synth ever could have). For example, suppose we abuse it and just stick in a bunch of irrelevant unrelated waves, all next to each other. The PPG had a lot of that going on too. Suppose we didn’t limit ourselves to single-cycle waves, but actual pieces of contiguous samples, and then another and then another, and so on, all in a queue, and modulated our way into those, so that it didn’t just play one cycle but played a section of it as if it were a little sampler. And suppose we’d filled the wave memory with lots of little short snippets of sampled natural sound, like drums, water drops, bits of wood hitting a floor, etc. And we just played them all one after the other, as a wave sequence. A modulatable wave sequence. And we had a few of them going on at once, which we could crossfade between. There’s your Wavestation.
I think Animoog also qualifies into the wave-table synth category.
Some of the included timbres are full wave-tables (multiple waves on x-axis) and you can stack 8 of them and use a path to travel thru the waves pretty much like one can do with PPG WaveGenerator.
Nave's wave-table borders into Granular Synthesis as well with the noise and travel options.
I'm yet to pick up infinite and haven't had time to play with Scythe yet so hopefully someone can jump in and help you.
I will say that it's really easy to setup this in Nave and also to visualise wavetable synthesis in action. On the wavetable page tap the little "full" button, this opens a large wavetable view and you can use the fader on the bottom to preview the sound and visual representation. This fader has 4 zones, the middle 2 are manual scrolling, forward and reverse and the left and right zones will travel through the table at varying speeds, left plays forwards and right is backwards. You can change the speed by sliding which corresponds to changing the "travel" function on the wave page.
Dunno if this is of any help, but I just watched this a couple of days ago while waiting for the Syntorial sale:
https://youtube.com/watch?v=XPtTJsUTH6Y
(What's the syntax to embed YT videos?)
Excellent! My eyes were blind, but now they see! Seriously though, this is an amazing breakdown that makes it easy to understand what is happening. It is like doing loop slicing, just on a smaller timescale.
You, sir, are a gift.
@u0421793 Thank you for such a clear explanation. Exploring this in Nave is also a great suggestion. The UI is easier for me to understand than Skythe.
It seems to me that the wave table, rather than representing short dynamic slices of the original sound, represents spectral analyses of each segment, maybe weights of fundamental frequencies. These give the timbre of the segment of the original sound, and if the wave table is swept through at the right speed, recreated the original sound in a vocoder type of way.
But the original idea of pre-computing subtle effects of analog components is pretty cool.
Actually, I can think of a simpler way to explain it. Imagine we had a wavetable that was very simple. It’s a table with only three entries. Table entry number one is a simple single-cycle waveform. Number two is another single cycle waveform but with more harmonics. Number three is another single cycle waveform but with a lot more harmonics. That’s all.
The digital oscillator works by continually reading out the values of the single cycle waveform (which itself might be a table of values which describes a wave excursion from zero, climbing up to full, climbing back down to zero, going all the way down to negative, climbing back up again to zero, and then you simply read out all those values again and again at whatever frequency you want). If you had a lever which you could nudge which pushed the reader from its normal resting position of wavetable entry number one - the simple single cycle waveform, up to the next neighbour, wavetable entry number two - the slightly more complex one, then you can waggle that modulator in repeated low frequency oscillation fashion, or a one-shot transient fashion (ie, an envelope). If you pushed the modulator with a bit more welly so that it reached all the way to wavetable entry number three, well, you’ve gone all the way over! If you keep waggling it so that you go from wavetable entry one, to two, to three, back to two, back to one, you’d be forgiven for thinking there’s some amazing filter action going on (although a bit steppy, with only three steps to choose from). This is why we don’t have wavetable synths with only three entries in the wavetable - more like 64 or more, so that each neighbour is almost indistinguishably different from the previous.
@u0421793 Thank you, that is once again very helpful.
Great explanation, as ever @u0421793. Details and flavor. Rare.
I reckon Animoog is a good way to visualize/hear what's going on with a wavetable. Load 8 really different waves into each wavetable slot and explore what happens as you move the hotspot around on the main screen. Play with creating simple (short) paths to hear what happens as you scan over more than one at a time.
Or you can use the x-orbit and slow rate and the spot in the center
Yes, that, thank you.
I couldn't remember the name of the control and was too lazy to pull it out.
WaveMapper also allows a good visual indication of what’s happening. Now it would be better if I could show a video, but can’t lol so here’s a few pics at different times.
The green light shows where it is ‘Playing’ along the path of this 16 wave wavetable. As you can see it says 16 / linear. So as the green light is moving up and down the waves, it shows below how the actual wave sounding is being altered.
Hopefully these few pics give you a good idea
Then just to get rid of the thought that it’s like a tape playing along a linear path at a constant speed, remember we are using envelopes to control the journey along the chosen path of the wavetable (remember the path does not have to be linear).
Here’s some pics on the envelope
Now if we then think of WaveMapper having three of these Oscillators and each can be a wavetable, single wave, a short sample or a sub Osc. These can be mixed together and noise added. Two of these can then be mixed in the amplifier section as filtered, non filtered or as the individual components.
This is why I find Scythe to be too simplistic
>
Thanks sensei, edutaining as ever. I must get a handle on those WTF knobs.
This forum really is an education, nice one @u0421793.
Extra style points for Viz and Carry On references. I’m wearing a Sid James t-shirt right now in fact. I own 3. I may require help.
@Fruitbat1919 I am enrolling in your class as well. Good stuff!
Great explanations guys! Makes me want to get Nave out right away.
Audio(school)bus?
Interesting information all! Wavetable seems like it touches on or possibly includes almost every other type of synthesis. It is as deep as the programming and interface can make it.
Good information about the history and influence of wavetable synths here..
https://www.ableton.com/en/blog/new-wave-depth-look-wavetable/
Agree 100%
Always thought that. Anyone who disagrees I would like to tell me what it is. (serious)
This is why I always wanted Mitosynth to have a physical wave display.
Here is why you are onto something in my opinion.
I feel like the new Schyte app sounds exactly a Granular synth. I don't know if it is an audio error or not, but I hear audio being destroyed in this app and repurposed. I don't hear the actual wave.
That is my opinion with my understanding of these concepts.