pitch shifter in Max?

Jan 25, 2011 at 7:56pm

pitch shifter in Max?

hi

what do you use when you need quite a lot of pitch shifters?? I usually used gizmo~ but for a piece i am working on, i need some 15 or 20 and that’s 15 or 20 FFTs), and even for a new computer it begins to be quite a lot. I had CPU kliks – so of course i did things mute~ etc, and it is going better, but i was just wondering what people use when they need quite a lot of pitch shifters – is there another object, a VST plug-in, something?

many thanks

kasper

#54587
Jan 25, 2011 at 8:43pm

15 or 20 gizmo doesn’t mean 15 or 20 FFTs if you are pitch-shifting a unique source. If you want to pitch shift a single signal, use 20 gizmos inside a unique [pfft~]. If you need 20 outputs, it’s fine, but you already save on the inputs (FFT). If a kind of mix in pfft world is possible, then use just a few outputs, you’ll save on inverse-FFT as well.

If you need to pitch shift 4 sources, each with 5 gizmos, you can also use a pfft~ with 4 inputs.

#196592
Jan 25, 2011 at 8:48pm

Hi Kasper,

You might have a look at granular- or delay-based solutions.

FTM might help also but it could lead you to rewrite much of your patcher.

Best regards,

Roald

#196593
Jan 25, 2011 at 11:18pm

easy answer: i work offline :)

#196594
Jan 26, 2011 at 12:19am

in addition to jean-francois answer i have used very heavy-duty fft processing inside a poly~ which, with the help of a simple message, can spawn a thread to the second processor of a dual-core mac. so a patch maxing out at over 100% got down to somewhere around 40%.
its in the (not so new anymore) poly help-file.

good luck shifting
hans

#196595
Jan 26, 2011 at 9:30am

hi all

thanks for the answers

@ J-F Charles : I did not knew (or rather thought about it) that you can include several gizmos in one pfft. Will have a look at it. However when doing similar things, in the past, with “brickwall” banpass filters I saw no difference (cpu-wise) in having 2 or more band passes in one pffft or one pfft by band. might be different with gizmo..

@ roman – offline? you mean non-real-time? difficult for a real-time piece!!! :-)

@Kochhw – yes, totally forgot about the possibility, with poly~ to spread the work on the 2 halves of a dual core processor – even if this thing, in max, is still very unclear to me (what is done on which processore etc)

many thanks

kasper

#196596
Jan 31, 2011 at 12:44am

Hello hello.

New to max and doing something similar.

I’m having trouble finding an object called ‘gadget’. Does anyone use this object/know where to get it?

And can anyone say what it’s relationship with gizmo is? (vague vague vague I know)

Thanks

#196597
Jan 31, 2011 at 2:48am

Oh wow. All is clear now.

Sorry. Should be a little more stoic before falling back on the forums!

#196598
Jan 31, 2011 at 10:22am

Hi Kasper,
With [pfft~], you will save processing power by saving on the number of inputs/outputs of the pfft~, i.e., the number of signals that you have to apply the FFT and IFFT algorithm to. Otherwise, I don’t think you would gain anything. Can’t try right now, though.
J-F

#196599
Mar 10, 2011 at 10:01pm

I don’t get the diffrence between using poly~ and pfft~ ? Is it more computational efficient to use pfft~ for the poly function when using fft~ i.e. using the gizmo thingy (sorry i don’t know much about fft and the whole physics/maths around it).

#196600
Apr 29, 2011 at 5:12am

I searched offline gizmo, and offline shift, and this seemed to be the most relevant thread. I’d like to populate a series of buffers for a mellotron style sampler, based off a single audiofile/buffer pitch shifted into the different ranges necessary. It needn’t occur in real time, but I’d like to be able to do it on the fly while other DSP is occurring. What object(s) would I use for this task? I know defer makes something a low priority, but that doesn’t quite seem to fit.

Thanks.

#196601

You must be logged in to reply to this topic.