granular pitch shift? gizmo~? what?

Eric Sheffield's icon

Hi, all.
I'm in need of a realtime pitch shifter for an upcoming patch, and am rather confused as to my available options. On one hand, I've downloaded a granular pitch shifter called granola~ that I can't seem to get to soud very good at all. It also introduces substantial delay. On the other hand, I loaded up the gizmo~ help file with a sample of a brake drum, and it sounded great! I didn't notice an unacceptable delay either.
What's the purpose of a granular pitch shifter?
In my case, I want to tie the velocity of a drumpad trigger to a pitch shift so that the harder the pad is played (higher velocity), the lower the pitch of the triggered sample (of a drum, brake drum, what have you). These samples will need be triggered in pretty rapid rhythmic succession. Is gizmo~ the best tool for this?
Thanks!

Gary Lee Nelson's icon

Don't know granola~ but gizmo~ is great. The function is pitch shifting.
Granular is the method. The input is broken into small "grains," transposed
then reassembled to maintain the original duration. If your sources are
percussive you may want to vary the duration with pitch. play~ works for
this. Drive play~ with a line~ with input like this 0, 1000 2000. Where
1000 is the duration of the sample and 2000 is the desired duration. This
is just like varying tape speed. 2000 drops this sample an octave 1:2. The
ratio corresponds to the interval of transposiion. Look for the transratio
object.

On 6/28/07 6:32 AM, "Eric Sheffield" wrote:

>
> Hi, all.
> I'm in need of a realtime pitch shifter for an upcoming patch, and am rather
> confused as to my available options. On one hand, I've downloaded a granular
> pitch shifter called granola~ that I can't seem to get to soud very good at
> all. It also introduces substantial delay. On the other hand, I loaded up
> the gizmo~ help file with a sample of a brake drum, and it sounded great! I
> didn't notice an unacceptable delay either.
> What's the purpose of a granular pitch shifter?
> In my case, I want to tie the velocity of a drumpad trigger to a pitch shift
> so that the harder the pad is played (higher velocity), the lower the pitch of
> the triggered sample (of a drum, brake drum, what have you). These samples
> will need be triggered in pretty rapid rhythmic succession. Is gizmo~ the
> best tool for this?
> Thanks!

Cheers
Gary Lee Nelson
Oberlin College
www.timara.oberlin.edu/GaryLeeNelson

Gary Lee Nelson's icon

Here's transratio from the examples folder

Max Patch
Copy patch and select New From Clipboard in Max.

On 6/28/07 6:32 AM, "Eric Sheffield" wrote:

>
> Hi, all.
> I'm in need of a realtime pitch shifter for an upcoming patch, and am rather
> confused as to my available options. On one hand, I've downloaded a granular
> pitch shifter called granola~ that I can't seem to get to soud very good at
> all. It also introduces substantial delay. On the other hand, I loaded up
> the gizmo~ help file with a sample of a brake drum, and it sounded great! I
> didn't notice an unacceptable delay either.
> What's the purpose of a granular pitch shifter?
> In my case, I want to tie the velocity of a drumpad trigger to a pitch shift
> so that the harder the pad is played (higher velocity), the lower the pitch of
> the triggered sample (of a drum, brake drum, what have you). These samples
> will need be triggered in pretty rapid rhythmic succession. Is gizmo~ the
> best tool for this?
> Thanks!

Cheers
Gary Lee Nelson
Oberlin College
www.timara.oberlin.edu/GaryLeeNelson

Jean-Francois Charles's icon
Eric Sheffield's icon

By the way, no disrespect to Mr. Lyon (granola~'s creator), as I know he frequents these forums! :)
I'm sure that it's a well done granular pitch shifter, but I probably don't know how best to implement it.
In the little listening, I've done, gizmo~'s freq domain method certainly sounded better. I'm using a Macbook Pro and don't expect to have much else in the way of processor intensive manipulation, so I'm sure that the heavier CPU load won't be an issue.
This is a good thing to discover as I have an older patch that uses granola~ that will probably also better be served by gizmo~.
Thanks!

Gary Lee Nelson's icon

As was pointed out, granola~ and gizmo~ do things differently. gizmo~ is
fft based.

Unfortunately, shifting sounds very far will always degrade the sound if
your goal is realism (faithfulness to the original sound). I've used a
combination of play~ to stretch a sound to a specified duration and gizmo~
to transpose it back to the original pitch of the sample. It's all done
with ratios of time and frequency. If you double the duration with play~
then transpose up an octave with gizmo~. I posted a sample patch some time
back.

If it is a big stretch there are some very interesting artifacts that are
definitely out of the domain of acoustic instruments.

On 6/28/07 1:07 PM, "Eric Sheffield" wrote:

> By the way, no disrespect to Mr. Lyon (granola~'s creator), as I know he
> frequents these forums! :)
> I'm sure that it's a well done granular pitch shifter, but I probably don't
> know how best to implement it.
> In the little listening, I've done, gizmo~'s freq domain method certainly
> sounded better. I'm using a Macbook Pro and don't expect to have much else in
> the way of processor intensive manipulation, so I'm sure that the heavier CPU
> load won't be an issue.
> This is a good thing to discover as I have an older patch that uses granola~
> that will probably also better be served by gizmo~.
> Thanks!

Cheers
Gary Lee Nelson
Oberlin College
www.timara.oberlin.edu/GaryLeeNelson

Eric Sheffield's icon

I'm actually counting on the pitch shift altering the sound considerably for my purposes. I never really seemed to be able to get granola~ to shift the pitch even slightly without changing the sound undesirably and/or introducing substantial delay.