Hi,
as I couldn't find examples for a working fft/phase-vocoder based realtime pitch shifter for pd online, I made one based on the I07.phase.vocoder example of Miller Puckette, replacing the tabread4~ with a vd~.
I attach it, as some might have a use for it.
Happy Holidays to everybody!
-- Orm
Hi, there's [else/pvoc.live~] which is a fft/phase-vocoder based real time pitch shifter and time stretcher. It's also based in Miller's phase vocoder example. It uses a delay line but I use the [del~] object from ELSE instead of [delread4~] (I prefer to use the new name instead of the old [vd~] one). At the time I had to use this object from ELSE instead because [delread4~] had a bug that got fixed this year.
There's also [else/stretch.shift~], which is granular based but it's quite the same, just not FFT based, and I also like to interpret FFT as a form of granular by the way.
Cheers and happy holidays
Em sáb., 23 de dez. de 2023 às 10:47, Orm Finnendahl < orm.finnendahl@selma.hfmdk-frankfurt.de> escreveu:
Hi,
as I couldn't find examples for a working fft/phase-vocoder based realtime pitch shifter for pd online, I made one based on the I07.phase.vocoder example of Miller Puckette, replacing the tabread4~ with a vd~.
I attach it, as some might have a use for it.
Happy Holidays to everybody!
-- Orm _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
I see your example is based on an example from an older version of Pd. In Pd 0.54 I have updated the examples to just use [s~]/[r~] instead of [tabsend~]/[tabreceive~]. Use the latest version for a bug free [delread4~] please.
btw, my live electronics tutorial has examples that show how to do these kinds of things and there's an example which is solely for pitch shifting, if you want just that and no time stretch/compress.
See Part.09-Spectral.Processing/34-Advanced/3.Phase.Vocoder/1.TimeStretch-PitchShift/ *3.Ring-Buffer-Pitch.Shift.pd*
I haven't updated my examples yet to just use [s~]/[r~] instead of [tabsend~]/[tabreceive~], will do it soon , but here's a screenshot
[image: Screen Shot 2023-12-24 at 01.43.02.png]
cheers
Em dom., 24 de dez. de 2023 às 01:29, Alexandre Torres Porres < porres@gmail.com> escreveu:
Hi, there's [else/pvoc.live~] which is a fft/phase-vocoder based real time pitch shifter and time stretcher. It's also based in Miller's phase vocoder example. It uses a delay line but I use the [del~] object from ELSE instead of [delread4~] (I prefer to use the new name instead of the old [vd~] one). At the time I had to use this object from ELSE instead because [delread4~] had a bug that got fixed this year.
There's also [else/stretch.shift~], which is granular based but it's quite the same, just not FFT based, and I also like to interpret FFT as a form of granular by the way.
Cheers and happy holidays
Em sáb., 23 de dez. de 2023 às 10:47, Orm Finnendahl < orm.finnendahl@selma.hfmdk-frankfurt.de> escreveu:
Hi,
as I couldn't find examples for a working fft/phase-vocoder based realtime pitch shifter for pd online, I made one based on the I07.phase.vocoder example of Miller Puckette, replacing the tabread4~ with a vd~.
I attach it, as some might have a use for it.
Happy Holidays to everybody!
-- Orm _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
thanks for the notes/links. I made the granular counterparts a long time ago (~20 years) so it might be interesting to see whether things have changed. Concerning delread4~: Can you send me links/information about what was wrong?
-- Orm
Am Sonntag, den 24. Dezember 2023 um 01:44:09 Uhr (-0300) schrieb Alexandre Torres Porres:
I see your example is based on an example from an older version of Pd. In Pd 0.54 I have updated the examples to just use [s~]/[r~] instead of [tabsend~]/[tabreceive~]. Use the latest version for a bug free [delread4~] please.
btw, my live electronics tutorial has examples that show how to do these kinds of things and there's an example which is solely for pitch shifting, if you want just that and no time stretch/compress.
See Part.09-Spectral.Processing/34-Advanced/3.Phase.Vocoder/1.TimeStretch-PitchShift/ *3.Ring-Buffer-Pitch.Shift.pd*
I haven't updated my examples yet to just use [s~]/[r~] instead of [tabsend~]/[tabreceive~], will do it soon , but here's a screenshot
[image: Screen Shot 2023-12-24 at 01.43.02.png]
cheers
Em dom., 24 de dez. de 2023 às 01:29, Alexandre Torres Porres < porres@gmail.com> escreveu:
Hi, there's [else/pvoc.live~] which is a fft/phase-vocoder based real time pitch shifter and time stretcher. It's also based in Miller's phase vocoder example. It uses a delay line but I use the [del~] object from ELSE instead of [delread4~] (I prefer to use the new name instead of the old [vd~] one). At the time I had to use this object from ELSE instead because [delread4~] had a bug that got fixed this year.
There's also [else/stretch.shift~], which is granular based but it's quite the same, just not FFT based, and I also like to interpret FFT as a form of granular by the way.
Cheers and happy holidays
Em sáb., 23 de dez. de 2023 às 10:47, Orm Finnendahl < orm.finnendahl@selma.hfmdk-frankfurt.de> escreveu:
Hi,
as I couldn't find examples for a working fft/phase-vocoder based realtime pitch shifter for pd online, I made one based on the I07.phase.vocoder example of Miller Puckette, replacing the tabread4~ with a vd~.
I attach it, as some might have a use for it.
Happy Holidays to everybody!
-- Orm _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
sure, this was the issue https://github.com/pure-data/pure-data/issues/697
it would particularly ruin this patch because I had different block sizes for reading and writing, because of the big FFT block size
Em dom., 24 de dez. de 2023 às 08:03, Orm Finnendahl < orm.finnendahl@selma.hfmdk-frankfurt.de> escreveu:
thanks for the notes/links. I made the granular counterparts a long time ago (~20 years) so it might be interesting to see whether things have changed. Concerning delread4~: Can you send me links/information about what was wrong?
-- Orm
Am Sonntag, den 24. Dezember 2023 um 01:44:09 Uhr (-0300) schrieb Alexandre Torres Porres:
I see your example is based on an example from an older version of Pd. In Pd 0.54 I have updated the examples to just use [s~]/[r~] instead of [tabsend~]/[tabreceive~]. Use the latest version for a bug free
[delread4~]
please.
btw, my live electronics tutorial has examples that show how to do these kinds of things and there's an example which is solely for pitch
shifting,
if you want just that and no time stretch/compress.
See
Part.09-Spectral.Processing/34-Advanced/3.Phase.Vocoder/1.TimeStretch-PitchShift/
*3.Ring-Buffer-Pitch.Shift.pd*
I haven't updated my examples yet to just use [s~]/[r~] instead of [tabsend~]/[tabreceive~], will do it soon , but here's a screenshot
[image: Screen Shot 2023-12-24 at 01.43.02.png]
cheers
Em dom., 24 de dez. de 2023 às 01:29, Alexandre Torres Porres < porres@gmail.com> escreveu:
Hi, there's [else/pvoc.live~] which is a fft/phase-vocoder based real
time
pitch shifter and time stretcher. It's also based in Miller's phase
vocoder
example. It uses a delay line but I use the [del~] object from ELSE
instead
of [delread4~] (I prefer to use the new name instead of the old [vd~]
one).
At the time I had to use this object from ELSE instead because
[delread4~]
had a bug that got fixed this year.
There's also [else/stretch.shift~], which is granular based but it's
quite
the same, just not FFT based, and I also like to interpret FFT as a
form of
granular by the way.
Cheers and happy holidays
Em sáb., 23 de dez. de 2023 às 10:47, Orm Finnendahl < orm.finnendahl@selma.hfmdk-frankfurt.de> escreveu:
Hi,
as I couldn't find examples for a working fft/phase-vocoder based realtime pitch shifter for pd online, I made one based on the I07.phase.vocoder example of Miller Puckette, replacing the tabread4~ with a vd~.
I attach it, as some might have a use for it.
Happy Holidays to everybody!
-- Orm _______________________________________________ Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management ->
https://lists.puredata.info/listinfo/pd-list
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list