Minimum duration for GrainDur in SampleCloud

0 votes
115 views

I have been using the SampleCloud prototype with very short "GrainDur", so short the grains become wavetables rather than "normal" sample clips. In this way, the frequency of the heard sound becomes 1/GrainDur; so a GrainDur of 0.0023 s is roughly equivalent to a pitch of 440Hz (A3). I also use a keyboard and set GrainDur to 1/!KeyPitch, meaning I can play on a keyboard and the "wavetable" is modified to produce the tempered pitch. Traversing the TimeIndex in this scenario can produce changing timbres whilst the pitch is modified by a keyboard.

My question is whether there is a lower limit to the value in GrainDur - ie is there a maximum pitch frequency that can be produced in this way?

If I input GrainDur values manually, 0.00114 will sound but 0.00113 will not, this is roucghly equivalent to B4/Bb4 (almost two ocatves above middle C). When I play B4/Bb4 on a keyboard the pitch no longer changes with each ascending note. I thought maybe this was due to sample rate, so I doubled that, but the problem still remained. At a guess I would think that GranDur has been limited programatically?

Is there anyway of producing smaller values in GrainDur so I get an extended range to my pitch set?

asked Oct 15 in Sound Design by alex-devine (210 points)

1 Answer

0 votes

The minimum grain duration is approximately 1 millisecond.

Maybe you could use a combination of GrainDur and the Frequency parameters of the SampleCloud to get higher pitches? Perhaps default * (!Octaves twoExp) for the Frequency parameter to get octave shifts...

answered 1 day ago by ssc (Savant) (129,370 points)
Thank you for your suggestion.
However, Frequency sets the frequency of the underlying sample, the GrainDur sets the frequency of the heard sound (in the way I am using it). The Frequency changes the timbre of the pitch, not the pitch frequency (GrainDur does this as it is being used to define the duration of the wavetable and therefore the frequency - 1/duration - of the sound). It would seem then, that the 0.001 second value for GrainDur is a hard limit.
Thanks
...