Help with gizmo~ and pitching whole of Max/msp audio output
Hello,
I am hoping to be able to control the whole of my audio output so that it can be pitched depending on a value - I will already have many samples being played and altered in various ways.
I have used the gizmo help file to find out how to pitch things, and I have managed to pitch a sample (code found below). However, as I say above I wish to not just pitch a single sample but pitch the output of Max/msp so that the whole pitch of my patch will be decided by an incoming value (from arduino).
Also, although I am using the [pfft~ gizmo_loadme 4096 4] and [expr pow(2.,$f1/12)] I am not actually sure what they are doing. Can somebody please explain these to me?
Can the gizmo_loadme part be replaced with my own subpatch? If so I wish to do this so that I can gain more of an understanding of why how and why it is working.
Thanks,
Alan
the whole output of maxmsp is [dac~] / [ezdac~], nothing more.
of course you can replace gizmo_loadme by whatever you want, for example make a stereo version, check pfft~ help file
[expr pow(2.,$f1/12)] changes midi values into a ratio where 1 is original pitch, 2 is a octave higher etc
To pitch the output of a sample based (buffer playback, granulation, etc) synth, I would recommend to link a pitch function to the playing speed of each sample. Using gizmo~ (or any other global re-pitch approach) might have inconvenient side-effects on sound quality. In the case of gizmo~ itself, you add the inconvenience of FFT analysis re-synthesis latency.
Thanks for the replies.
Jean-Francois, I do not want to change the speed of my piece - I want to be able to control the pitch independently.
I will see if I can use the [dac~] with the pitch shifting patch I currently have (the one in my first post) however I do not think it can control the dac, and if I can and the effects are as bad as you say, Jean-Francois, I will look into linking all of my samples to the one pitch shifter.