controlling time between grains & speed in granplay~ (by GranTK)

drewmcm's icon

hi there using granplay~
would like to control time between grains and speed by using an external control. There doesn't seem to be any inlets to those perimeters.

Does anyone have any idea how to either connect or make an inlet to these perimeters?

thnks

drew

drewmcm's icon

sorry just to be clear it's the rgrano object....

brendan mccloskey's icon

Hi
I'm not familiar with granplay, but the rgrano abstraction has the parameter controls you mention; it lives here: Max/examples/sampling/granulation

Brendan

drewmcm's icon

thanks for that -

I have the rgrano object going ok, but want to be able to patch something into control the time between grains, and speed speed perimeters.

I can't see any inlet, or way to connect a patch cable to those controls.

any ideas?

brendan mccloskey's icon

And where does the rgrano object reside? Inside an external? If so you can't hack or adapt it to add functionality. Did you look at the example I referred to?

drewmcm's icon

yes thats the one I'm using, it lives in this path -
/Applications/Max6/examples/sampling/granular/lib

as you said.

it's got no inlet or way of patching to the time between grains or playback speed - butI guess thats just the way it is which is a shame, it'd be nice to be able to add controls to those perimeters....

thanks

drew

brendan mccloskey's icon

Sorry, I'm still confused. I'm not familiar with GranTK and I assumed it used the Max rgrano abstraction. But if you open the Max patch called granularized (which uses rgrano), in examples/sampling/granular, those exact controls are there: grain interonset and scrub speed:

forum.png
png
drewmcm's icon

sorry, yep thats the one - those are the two perimeters, I want to be able to control those with colour tracking, but can't patch any inout to control them.

any ideas?

thanks for all your help and time

drew

Gregory Taylor's icon

You patch it the same way you patch anything in Max.

1. What range of data values (float/int) does the granularized patch expect?
2. We've got no idea what you're using for color tracking, but you need to find out the range of data values the color tracking stuff spits out for whatever kind of tracking you're doing.
3. Compare the ranges. Do you need a scale operator to convert the output data range from whatever color tracking you're doing to the expected input data ranges? If so, put one in for the two granularized patch parameters you want to run.
4. Listen and rethink.

drewmcm's icon

1-2 i have my ranges sorted -
Just can't patch to those perimeters. there are inlets in the rgrano for other perimeters except those two (time between grains, and speed speed perimeters) - so wondering how I can patch into them...

then i can pay further with ranges etc....
i've attached a way i've starting looking at working with the patch

thanks heaps

drew

granplay.maxpat
Max Patch
drewmcm's icon

sorry just meant to add, the time between grains, and speed speed perimeters won't let me patch like other things, sorry thats the point i'm trying to solve

thanks

brendan mccloskey's icon

Ok, I think I've successfully navigated the problem description. What you're talking about is the [bpatcher]. If you unlock the main granularized patch you will see that there are inlets for a number of parameters; sadly speed and interonset aren't among them.

So, you will have to do some hacking. Open the rgrano abstraction and click the Presentation mode button to see the entire patch. Over on the left hand side are the two control parameters you seek. Connect your "colour tracking" values here.

If you make and save any changes, this will alter the rgrano abstraction, so you might want to rename your edited version so as not to break the tutorial patch. Navigating this type of patch can be a little opaque or challenging. Look at the right hand side of the granularized patch - there is an object called rgrano.maxpat.drumLoop.aif - this is the object you are changing when you edit the rgrano abstraction.

I still find terms like "abstraction" "bpatcher" "external" a little, umm, abstract, but only cuz I is fick init.

Brendan

brendan mccloskey's icon

. . . just to clarify an important point, to avoid further sorrow:

The rgrano abstraction itself contains an important subpatch, which resides inside the [poly~] object; I think it's called "grain" or "rgrain" or something similar. This will also need saved in the same location as your edited rgrano main patch. In fact to simplify the process, just copy everything inside the /granular folder (granularized.maxpat and lib folder) to another location on your hardrive known to Max, then edit away til your heart's content. Happy patching ((c) Taylor, G. 2001).

Brendan

brendan mccloskey's icon

I've attached the edited files, as described above

HTH

Brendan

toForum.zip
zip
drewmcm's icon

hey brendan thanks sooo much, really appreciate all your time helping me clear this up -

drew