Zitiere Phillip Stearns mindphone_divided@yahoo.com:
Thanks for the tip! So is general rule to avoid realtime expr~ objects if at all possible in the future?
i would have thought though some months ago, but matiu and tim taught me better.
[expr~] is a very useful and fast object (it is not slower than writing the maths in pd) (to know this would have saved me a _lot_ of patching in the past)
mfg.asd.r IOhannes
related question: which would be faster: writing an incoming signal to an array in real time (tabwrite~) or using a delay line (delwrite~) of the same length (ca. 4000 ms)? (i'm trying to implement a delay-line granulator that can pitch-shift in realtime using grains w/dur <= 200 ms, & trying to do it the least expensive way possible...)
thanks, david
From: zmoelnig@iem.at To: Phillip Stearns mindphone_divided@yahoo.com CC: pd-list@iem.at Subject: Re: [PD] Wave Shaping Date: Sat, 05 Feb 2005 14:00:03 +0100 (CET)
Zitiere Phillip Stearns mindphone_divided@yahoo.com:
Thanks for the tip! So is general rule to avoid realtime expr~ objects if at all possible in the future?
i would have thought though some months ago, but matiu and tim taught me better.
[expr~] is a very useful and fast object (it is not slower than writing the maths in pd) (to know this would have saved me a _lot_ of patching in the past)
mfg.asd.r IOhannes
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
seems like the most efficient way would be to insert a pitch shifter after the granulation, and control the shift with automation (like reading through an array with values for each grain).
for the granulation a method I tried once was to have a bunch of delay loops of the same length. they each took an audio signal in, and a control in(at audio rate). if the control signal was 1, they recorded the incoming signal and stopped feeding back (to clear the delwrite~), if the control signal was 0, they had full feedback so looped forever.
to break up the audio between them have a square wave with the timbre compressed so that the '1' section is 1/16 the period (or at least the length of each delay line). now if you hook it up to each grain's control inlet and put it out of phase for each (0, 1/16, 2/16, 3/16....) then chunks of the signal will be written into each delwrite~ until it writes again. then all you need is a method to listen to each delay line.
it's not as flexible as creating each grain~ object because you have to
setup the square wave, but I tried a smaller version (4) and it worked.
The patch is long gone but I'm pretty sure this is how it worked.
-brendan
david golightly wrote:
related question: which would be faster: writing an incoming signal to an array in real time (tabwrite~) or using a delay line (delwrite~) of the same length (ca. 4000 ms)? (i'm trying to implement a delay-line granulator that can pitch-shift in realtime using grains w/dur <= 200 ms, & trying to do it the least expensive way possible...)
thanks, david
From: zmoelnig@iem.at To: Phillip Stearns mindphone_divided@yahoo.com CC: pd-list@iem.at Subject: Re: [PD] Wave Shaping Date: Sat, 05 Feb 2005 14:00:03 +0100 (CET)
Zitiere Phillip Stearns mindphone_divided@yahoo.com:
Thanks for the tip! So is general rule to avoid realtime expr~
objects
if at all possible in the future?
i would have thought though some months ago, but matiu and tim taught me better.
[expr~] is a very useful and fast object (it is not slower than writing the maths in pd) (to know this would have saved me a _lot_ of patching in the past)
mfg.asd.r IOhannes
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
Hello List,
here's my first ever PD patch! any feedback would be most appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
I'm still scratching my head over a couple of glitches, though - it seems a few dozen samples of the original signal will on rare occaision bleed through unaltered... a 64-sample drop, perhaps? the vd~ is nested beneath the delwrite~, so I'm at a loss. Any ideas?
From: "david golightly" davigoli@hotmail.com To: bstine@telus.net CC: pd-list@iem.at Subject: [PD] dlgranulator~ patch Date: Wed, 09 Feb 2005 12:25:48 -0500
Hello List,
here's my first ever PD patch! any feedback would be most appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
This looks very promising, but I can't get it to work. Presumably it should just be a case of connecting an audio signal to grainengine's input, and connecting the output to the dac? Are there some required initial settings?
Jamie
On Wed, 2005-02-09 at 17:25, david golightly wrote:
Hello List,
here's my first ever PD patch! any feedback would be most appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
did you make sure to download all the files in the dlgranulator~ folder?
try opening the granulator.pd file, it has a couple of initial settings & is
a good place to see what the patch can do.
From: Jamie Bullock jamie@postlude.co.uk To: david golightly davigoli@hotmail.com CC: PD List pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 10:43:50 +0000
This looks very promising, but I can't get it to work. Presumably it should just be a case of connecting an audio signal to grainengine's input, and connecting the output to the dac? Are there some required initial settings?
Jamie
On Wed, 2005-02-09 at 17:25, david golightly wrote:
Hello List,
here's my first ever PD patch! any feedback would be most appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
sorry for not being clear:
the patch is named
dlgranulator~.pd
it uses (requires) the abstractions
bounded_rand.pd grainpiston~.pd
and is showcased in the file
granulator.pd
From: "david golightly" davigoli@hotmail.com To: jamie@postlude.co.uk CC: pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 11:11:47 -0500
did you make sure to download all the files in the dlgranulator~ folder?
try opening the granulator.pd file, it has a couple of initial settings & is a good place to see what the patch can do.From: Jamie Bullock jamie@postlude.co.uk To: david golightly davigoli@hotmail.com CC: PD List pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 10:43:50 +0000
This looks very promising, but I can't get it to work. Presumably it should just be a case of connecting an audio signal to grainengine's input, and connecting the output to the dac? Are there some required initial settings?
Jamie
On Wed, 2005-02-09 at 17:25, david golightly wrote:
Hello List,
here's my first ever PD patch! any feedback would be most appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
Sorry for the multiple postings!
Let's try this again:
I've posted my new dlgranulator~ patch at:
https://www.puredata.org/Members/davigoli/dlgranulator%7E/download
you can also find it at:
https://www.puredata.org/Members/davigoli
it's now a ZIP file with all necessary files included, as well as a readme.
It will granulate real-time audio from [adc~] or any other audio source.
humbly, david
From: "david golightly" davigoli@hotmail.com To: davigoli@hotmail.com, jamie@postlude.co.uk CC: pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 14:55:45 -0500
sorry for not being clear:
the patch is named
dlgranulator~.pd
it uses (requires) the abstractions
bounded_rand.pd grainpiston~.pd
and is showcased in the file
granulator.pd
From: "david golightly" davigoli@hotmail.com To: jamie@postlude.co.uk CC: pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 11:11:47 -0500
did you make sure to download all the files in the dlgranulator~ folder?
try opening the granulator.pd file, it has a couple of initial settings & is a good place to see what the patch can do.From: Jamie Bullock jamie@postlude.co.uk To: david golightly davigoli@hotmail.com CC: PD List pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 10:43:50 +0000
This looks very promising, but I can't get it to work. Presumably it should just be a case of connecting an audio signal to grainengine's input, and connecting the output to the dac? Are there some required initial settings?
Jamie
On Wed, 2005-02-09 at 17:25, david golightly wrote:
Hello List,
here's my first ever PD patch! any feedback would be most
appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
David,
The patch works now - It seems like I had an old version. Great patch! Elegantly written, extremely versatile and useful, all without using any externals!
A few suggestions/observations:
1/ I would put a loadbang on one of your sets of 'suggested' settings. This is because starting the DSP on my Linux box without tweaking the settings first caused Jack to generate 1000's of xruns and nearly crash the machine!
2/ It might be useful to include a warning somewhere in the documentation stating that certain settings such as combinations of large grains with small inter-onset times can cause 'undesirable' output and should therefore be changed slowly whilst testing. Also, perhaps include a disclaimer or license, so people know what they are allowed to use the patch for.
I know this is not about the technical aspects, but I hope it is helpful!
Jamie
On Thu, 2005-02-10 at 21:09, david golightly wrote:
Sorry for the multiple postings!
Let's try this again:
I've posted my new dlgranulator~ patch at:
https://www.puredata.org/Members/davigoli/dlgranulator%7E/download
you can also find it at:
https://www.puredata.org/Members/davigoli
it's now a ZIP file with all necessary files included, as well as a readme.
It will granulate real-time audio from [adc~] or any other audio source.
humbly, david
From: "david golightly" davigoli@hotmail.com To: davigoli@hotmail.com, jamie@postlude.co.uk CC: pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 14:55:45 -0500
sorry for not being clear:
the patch is named
dlgranulator~.pd
it uses (requires) the abstractions
bounded_rand.pd grainpiston~.pd
and is showcased in the file
granulator.pd
From: "david golightly" davigoli@hotmail.com To: jamie@postlude.co.uk CC: pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 11:11:47 -0500
did you make sure to download all the files in the dlgranulator~ folder?
try opening the granulator.pd file, it has a couple of initial settings & is a good place to see what the patch can do.From: Jamie Bullock jamie@postlude.co.uk To: david golightly davigoli@hotmail.com CC: PD List pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 10:43:50 +0000
This looks very promising, but I can't get it to work. Presumably it should just be a case of connecting an audio signal to grainengine's input, and connecting the output to the dac? Are there some required initial settings?
Jamie
On Wed, 2005-02-09 at 17:25, david golightly wrote:
Hello List,
here's my first ever PD patch! any feedback would be most
appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
Hallo, david golightly hat gesagt: // david golightly wrote:
I've posted my new dlgranulator~ patch at:
https://www.puredata.org/Members/davigoli/dlgranulator%7E/download
you can also find it at:
https://www.puredata.org/Members/davigoli
it's now a ZIP file with all necessary files included, as well as a readme.
It will granulate real-time audio from [adc~] or any other audio source.
Very cool patch!
I have some smalle remarks regarding the organisation: You use some global receives. This makes it impossible to use more than one instance of dlgran~ with *independent* settings. It would be nice, if the whole abstraction could be used multiple times.
Same with the windowing table, which will lead to "half-hanning multiply defined" warnings.
You could save some CPU cycles by removing hidden number boxes.
For storing presets I might recommend RRADical/Memento, which will give you OSC and through that midi control automatically. See http://footils.org/cms/show/1
I'll probably rradicalize your patch a bit, if you don't mind, for my own use.
Frank Barknecht _ ______footils.org__
_ __latest track: fqdn _ http://footils.org/cms/show/38
Thanks for all the comments and help! I've updated the patch somewhat and ironed out some bugs; a new version can be found at the same location:
http://puredata.org/Members/davigoli/dlgranulator%7E.zip/download
I'm intrigued by the OSC/RRadical system - I'll look into integrating it and let you know. If you don't mind, please send me your version of the patch when you're finished.
Thanks, David
From: Frank Barknecht fbar@footils.org To: pd-list@iem.at Subject: Re: [PD] APOLOGIES: dlgranulator~ patch Date: Thu, 24 Feb 2005 21:18:59 +0100
Hallo, david golightly hat gesagt: // david golightly wrote:
I've posted my new dlgranulator~ patch at:
https://www.puredata.org/Members/davigoli/dlgranulator%7E/download
you can also find it at:
https://www.puredata.org/Members/davigoli
it's now a ZIP file with all necessary files included, as well as a
readme.
It will granulate real-time audio from [adc~] or any other audio source.
Very cool patch!
I have some smalle remarks regarding the organisation: You use some global receives. This makes it impossible to use more than one instance of dlgran~ with *independent* settings. It would be nice, if the whole abstraction could be used multiple times.
Same with the windowing table, which will lead to "half-hanning multiply defined" warnings.
You could save some CPU cycles by removing hidden number boxes.
For storing presets I might recommend RRADical/Memento, which will give you OSC and through that midi control automatically. See http://footils.org/cms/show/1
I'll probably rradicalize your patch a bit, if you don't mind, for my own use.
Ciao
Frank Barknecht _ ______footils.org__
_ __latest track: fqdn _ http://footils.org/cms/show/38
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
sorry for not being clear:
the patch is named
dlgranulator~.pd
it uses the abstractions
bounded_rand.pd grainpiston~.pd
and is showcased in the file granulator.pd
From: "david golightly" davigoli@hotmail.com To: jamie@postlude.co.uk CC: pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 11:11:47 -0500
did you make sure to download all the files in the dlgranulator~ folder?
try opening the granulator.pd file, it has a couple of initial settings & is a good place to see what the patch can do.From: Jamie Bullock jamie@postlude.co.uk To: david golightly davigoli@hotmail.com CC: PD List pd-list@iem.at Subject: Re: [PD] dlgranulator~ patch Date: Thu, 10 Feb 2005 10:43:50 +0000
This looks very promising, but I can't get it to work. Presumably it should just be a case of connecting an audio signal to grainengine's input, and connecting the output to the dac? Are there some required initial settings?
Jamie
On Wed, 2005-02-09 at 17:25, david golightly wrote:
Hello List,
here's my first ever PD patch! any feedback would be most appreciated!
https://puredata.org/Members/davigoli/dlgranulator~
thanks,
David Golightly
PD-list@iem.at mailing list UNSUBSCRIBE and account-management ->
http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://iem.at/cgi-bin/mailman/listinfo/pd-list
Hi David
This is a really incredible patch. Thanks for making it.
cheers dafydd
Hallo, zmoelnig@iem.at hat gesagt: // zmoelnig@iem.at wrote:
Zitiere Phillip Stearns mindphone_divided@yahoo.com:
Thanks for the tip! So is general rule to avoid realtime expr~ objects if at all possible in the future?
i would have thought though some months ago, but matiu and tim taught me better.
[expr~] is a very useful and fast object (it is not slower than writing the maths in pd) (to know this would have saved me a _lot_ of patching in the past)
In this case of waveshaping it's definitly not the expr~ object, that's slow, but the evaluation of the formula, which is pre-processed in the tabread4~ case. tabread4~ is just doing something entirely different than expr~ does in this application.
BTW: You should be able to let expr~ do practically the same as tabread4~ by using the array-accessing lookup instructions available to all expr-objects like in:
[expr array100[$f1]]
Add to this a formula for 4-point polynomial interpolation as described in [1] and you can replace tabread4~ with expr-objects. And do the benchmark again! ;)
[1] Miller's book: http://www.crca.ucsd.edu/~msp/techniques/latest/book-html/node27.html
Frank Barknecht _ ______footils.org__