New Tool (2.8-3.1): Padsynth

And another new version:

3175 org.drakmaniso.Padsynth_Rns280_V0.3.xrnx

Some important features this time:

  • Keyzone mapping: you can now generate several wavetables mapped across the keyboard, which makes the synth much more useful. - New parameters: you can control the growth of the spread applied to the harmonics; you can also control the placement of these harmonics/overtones. - The sliders are now logarithmic, which means it’s easier to finetune the low values. - Experimental: a fake sample is generated in the first slot, that does not contain sound shows the spectrum corresponding to the parameters selected.

This last feature will probably be optional in the future. I figured it could be useful to have some visual feedback on what the various knobs/sliders do, even if it’s not realtime feedback.

I realize that I did not explain how the synth works and what the various parameters do; I’ll try to write a clear explanation for the next version.

Any feedback welcomed!

Cool, will test tonight!

It seems there isn’t much interest for this synth? :(

Is it because everyone is using plugins, or because the sounds produced are not interesting enough? Or the tool too complicated to use?

Anyway, here’s a new version:

3182 org.drakmaniso.Padsynth_Rns280_V0.4.xrnx

The new features are mostly for usability:

  • You can now cancel sample generation - There is now a “Test Note” mode, which allows to quickly generate a short sample; very useful when making adjustments to an already existing sound, to avoid waiting for a full range generation. - There is a new placement method, “Waved”

I hope there isn’t too many bugs, as I will publish this version on the tool page.

awesome, testing 0.4. thanks for adding the shortcut to create a padsynth. nice to see the dialogue gone too :)

it seems rendering takes a bit longer now tho.

i use this daily to see what i could come up with. im a bit confused about the keyzone thing tho.

this waved thing is !!! … this is rapidly becoming the only thing i use in addition to samples and resynth in renoise :)

i for one can’t wait for unison!

a request: could you place the rendered sample as 00 instead of program preset data at 00 and sample at 01? this would help me get directly to seeing what the sample looks like in the sample editor…

Yes, this is due to the “non blocking” feature. Samples are now generated in the background, which avoids seeing the “Script not responding” window. Unfortunately I had to sacrifice a bit of speed for this to work. Also note that I have increased the default generation to 1s. It’s best to use the new “Test Note” mode when looking for a new sound, and then switch to the “Keyzones” mode.

Maybe my choice of words is not the best. This is to generate several samples per octave, instead of one for the full range of notes. The parameters are exactly the same that Renoise uses for the pluggin grabber. The “Test Note” mode is here to bypass the multiple samples generation; this is useful when you have already set up a key range and long duration, but want to make a quick test with new parameters.

Thanks! As there was no bug reports, I assumed it wasn’t used. Nice to know it’s not the case!

Haven’t played with it that much, but it isn’t difficult to use or sound bad at all, have gotten pretty cool results even though it feels a lill random changing the sliders, having no idea what the changes will do to the overall sound. Can take a while generating sounds if you use longer durations and note ranges / step sizes spanning a few octaves, which can be off-putting if you wish to a-b compare the synth on different settings. The test-tone will come in handy in this kind of scenario for sure.

Maybe you can add tool-tips explaining how the different parameters affect the outcome, also for things like the drop-down options in ‘Placement’ (harmonic, multiplied, Powered, Waved)?

I think this tool really starts to shine when you adjust the envelopes in the ‘Instrument Settings’, for example adding a slow attack portion in a volume envelope, use some panning and filtering. Maybe you can take a look at Mxb’s Resynth and use his envelope and arpeggiator tricks for your tool as well? :drummer:

Maybe you can ask vV how he worked around the ‘Script not responding’ notice, using a progress bar in one of his scripts?

ahh, i understand what you mean by keyzone/keyrange now. makes sense. i think this is a really neat synth, i just wish that both resynth and padsynth would allow for both to run in the same instrument, would be perfect :)

I completely forgot to mention that I updated the first post with an explanation of how the synth works. Hopefully it’s comprehensible enough.

From what I read in his post, this is exactly what I do. The only problem is, doing this is a bit slower than blocking the interface. I don’t think there’s a way around that.

@esaruoho : Now that I think about it, “keyrange” is probably a much better name for this feature; I’ll rename it in the next version.

Yeah, I also have a lot of fun with it - you’re doing great work here. (Each of my thoughts on improvement already mentioned by esaruoho and Djeroek.)


As for the improvements requested, I’ll see what I can do for the envelope. I personally prefer to use Renoise graphical editor for this, but I can add an optional ADSR envelope somewhere in the interface. I’ll probably implement the unison feature first, though.

you da man! was asking for this a month ago in this forum… beautiful algorithm. downloading!

love it, nice job!
I don’t hear much difference between the placement types, I can remember making some really strange but beautiful dissonances with zynaddsubfx version of padsynth… not sure though, maybe just me and I need to try this out more carefully.


In order to have dissonance, for “Multiplied” and “Powered” you need the “Treshold” and “Harmonize” settings at minimum, and set “Amount” to a quite high or low value. This last rotary encoder is logarithmic, not linear, so the values around 0 are for subtle adjustments.

For “Waved”, you need to set the period to something above 1, and play with the amount (“Harmonize” still at 0%).

Also, you can check the resulting deformation in the first sample generated (the one named “PadSynth Parameters”), if you use the “Test Note” mode instead of “Keyzones”.

I could also implement the same placement methods used in ZynAddSubFx, if you think they are more useful.

Cool! I’m tweaking around with it now and I’m finding some sweet sounds… will manage :)

btw I also found another, stranger implementation of padsynth in this application (at least I think it is the same type of algorithm):

you might find it interesting, very nice for mangling sounds… dunno how applicable a renoise implementation would be as the CPU usage is pretty steep in comparison, dunno how fast Lua FFT would be…

Neato. I’m gonna play around with this.

I’ve made it possible to open PadSynth over an existing (non-padsynth) instrument, but I don’t know how to offer this feature to the user. I see two possibilities:

Just always add PadSynth over the selected instrument if there is one; this means that to create a completely new instrument, the user will have to delete first the previous one, or select an empty slot.

My preferred solution would #2, but may be that would confusing?

Also, at the moment ReSynth doesn’t seem to like if someone add samples after its own, and refuses to open. Someone will have to request this feature to mxb too… :lol:

Nice, I didn’t know that one. Will test it.

Ït is very nice and it is indeed possible to create usable stuff with it, but yeah I suppose it must be hard to get through the wall of great free VSTi’s :unsure:

I love this tool, although I just tried it for 10 mins.

I’m on linux and almost never user any plugins, for various reasons. But this tool is perfect for me.

Thanks alot, will keep on testing :)

this definitely replaces my PCM-based korg 03R/W’s specific types of pads :)

Thanks, to know it’s being used is a great motivation!

I’m on linux too, and it’s true that finding good plugins can be problematic, especially now that everyone is moving to LV2, not (yet?) supported by Renoise. But I also really like the idea of self-contained song files, which do not depend on third party software. That’s probably what I like the most in the tracker approach to sequencing.

I’ll probably release a new version today, with the unison feature and the ability to layer PadSynth over existing samples (I still haven’t figured an UI for this, though).