Help with basic concept of granular playback


#1

After putting together a basic synth, i'd like to have a look at wavetables and explore some simple granular playback. I searching and followed a few examples posted and managed to get pretty rough sample/table playback from an SD card.

My goal would be to match the functionality of a microgranny 2:
http://www.bastl-instruments.com/instruments/microgranny/

..and then try and take it polyphonic.

I'm far from academic, have a good understanding of synthesis, basic understanding of logic through working with PD then Max, but never really got into DSP. Bitshifting is something that i can't (yet) fathom.

Ideally i'm looking to trigger a sample from a table, pitch it via midi and be able to control the start/stop points and envelope live.
Any pointers as to where to start would be greatly appreciated. I've included my first patch to show where i ended up (stuck).

wavetablePoly1.axp (11.1 KB)


Granular Synthesis
About tables: help a noob
#2

I suggest to allocate the table in the top-level patch, not in the polyphonic subpatch. Otherwise it will get allocated and loaded n times.
Stereo panning, you 'd better move this inside the poly subpatch, and use two audio outlets.
And you need to de-synchronize the voices, now they will be completely simultaneous. A quick solution is connecting patch/polyindex to the pitch inlet of the grainsize lfo, so all voices will be "one semitone" apart in cycle speed.

There is a granular "reverb" example in demos/audio_in/granular_verb.


#3

Thanks for the tips. I've been experiencing some weird behaviour with the subpatches. Probably a lot of me doing things i shouldn't, but at the moment this patch won't compile. It seems to not be able to find the allocated table. If i move the table into the subpatch it will go live.From the main patch i get errors.

granularTry3.axp (15.3 KB)


#4

Use "../sample" to reference a table in a subpatch that is allocated in the parent patch.


#5

I have also had some weird behaviour when using tables and subpatches. Here is a picture of what I experienced of good/bad behaviour.. The example in lowest right corner , with the subpatch, is the version that works almost verytime for me.. The version you use with the "table/alloc 16b sdram load" didnt work work for me(almost never do) and had to change it to how I set it up in down right corner.. Then it works here too..


#6

had a stupid bug in the last release, fixed on git, and will make a new release soon...


#7

Cool :smile: Thanks. nice to know... Ill just get it from Github in "manual" fashion


#8

Yeah just tested the new "table/alloc 16b sdram load" uploaded 12 days ago to Github and that works here too :smile: Nice :smile: