does anybody know how to make an up-down saw-wave ?
phasor~ just ramps up and then goes straight back to 0, but i want something that ramps up then back down again.
i know it's possible to use a [metro] and [line~] based solution, but that falls apart at high frequencies. is there a way to do this in the signal domain?
hard off a écrit :
does anybody know how to make an up-down saw-wave ?
a triangle oscillator?
phasor~ just ramps up and then goes straight back to 0, but i want something that ramps up then back down again.
i know it's possible to use a [metro] and [line~] based solution, but that falls apart at high frequencies. is there a way to do this in the signal domain?
phasor~ | -~ 0.5 | abs~ | -~ 0.25 | *~ 4
cyrille
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
On Sun, 2006-11-19 at 12:27 +0100, cyrille henry wrote:
hard off a écrit :
does anybody know how to make an up-down saw-wave ?
a triangle oscillator?
phasor~ just ramps up and then goes straight back to 0, but i want something that ramps up then back down again.
i know it's possible to use a [metro] and [line~] based solution, but that falls apart at high frequencies. is there a way to do this in the signal domain?
phasor~ | -~ 0.5 | abs~
[abs~] is part of zexy. if you need a solution only with internals, see frank's solution.
| -~ 0.25 | *~ 4
cyrille
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
___________________________________________________________ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
Roman Haefeli a écrit :
On Sun, 2006-11-19 at 12:27 +0100, cyrille henry wrote:
hard off a écrit :
does anybody know how to make an up-down saw-wave ?
a triangle oscillator?
phasor~ just ramps up and then goes straight back to 0, but i want something that ramps up then back down again.
i know it's possible to use a [metro] and [line~] based solution, but that falls apart at high frequencies. is there a way to do this in the signal domain?
phasor~ | -~ 0.5 | abs~
[abs~] is part of zexy. if you need a solution only with internals, see frank's solution.
well, abs~ is now part of zexy abstraction. it's made with expr~. all this equation can be made with expr~.
but using a table should be faster.
cyrille
| -~ 0.25 | *~ 4
cyrille
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
___________________________________________________________ Der fr�he Vogel f�ngt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you could easily get aliased harmonic frequencies. There's a few threads in the archive about avoiding this. My personal solution is to use [plugin~] with the BLOP LADSPA oscillator plugins.
best, d.
On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you
could easily get aliased harmonic frequencies. There's a few
threads in the archive about avoiding this. My personal solution is
to use [plugin~] with the BLOP LADSPA oscillator plugins.
I wonder how hard it would be to implement the BLOP LADSPA algorithm
in Pd, so that there would be native anti-aliased oscilators. Its
something that Pd sorely needs.
.hc
¡El pueblo unido jamás será vencido!
On Sun, 2006-11-19 at 15:40 -0500, Hans-Christoph Steiner wrote:
On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you
could easily get aliased harmonic frequencies. There's a few
threads in the archive about avoiding this. My personal solution is
to use [plugin~] with the BLOP LADSPA oscillator plugins.I wonder how hard it would be to implement the BLOP LADSPA algorithm
in Pd, so that there would be native anti-aliased oscilators. Its
something that Pd sorely needs.
iirc the 'pd way' to create anti-aliased oscillators is upsampling and filtering.
t
-- tim@klingt.org ICQ: 96771783 http://www.mokabar.tk
Nothing exists until or unless it is observed. An artist is making something exist by observing it. And his hope for other people is that they will also make it exist by observing it. I call it 'creative observation.' Creative viewing. William S. Burroughs
creb contains band-limited oscillators: [blosc~]
.-j
Hans-Christoph Steiner wrote:
On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you could easily get aliased harmonic frequencies. There's a few threads in the archive about avoiding this. My personal solution is to use [plugin~] with the BLOP LADSPA oscillator plugins.
I wonder how hard it would be to implement the BLOP LADSPA algorithm in Pd, so that there would be native anti-aliased oscilators. Its something that Pd sorely needs.
.hc
¡El pueblo unido jamás será vencido!
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Hans-Christoph Steiner wrote:
On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you could easily get aliased harmonic frequencies. There's a few threads in the archive about avoiding this. My personal solution is to use [plugin~] with the BLOP LADSPA oscillator plugins.
I wonder how hard it would be to implement the BLOP LADSPA algorithm in Pd, so that there would be native anti-aliased oscilators. Its something that Pd sorely needs.
I made the [sqosc~] object to do band-limited pulse-width modulated square wave. (http://pure-data.cvs.sourceforge.net/pure-data/externals/mrpeach/sqosc~/) You can choose the bandwidth at creation time. It wouldn't be too hard to make it do triangle waves as well. Sine waves are naturally bandlimited if you keep them below 1/2 sampling frequency. Running everything through a few [lop~]s should work as well unless the aliasing has already been introduced, by a table lookup with a too-large stride, or something like that. Martin
On Sun, Nov 19, 2006 at 03:40:51PM -0500, Hans-Christoph Steiner wrote:
On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you
could easily get aliased harmonic frequencies. There's a few
threads in the archive about avoiding this. My personal solution is
to use [plugin~] with the BLOP LADSPA oscillator plugins.I wonder how hard it would be to implement the BLOP LADSPA algorithm
in Pd, so that there would be native anti-aliased oscilators. Its
something that Pd sorely needs.
I am a big fan of these ones, by GÃŒnter:
http://lists.puredata.info/pipermail/pd-list/2006-05/038681.html
So juicy.
Best,
Chris.
chris@mccormick.cx http://mccormick.cx
On Nov 20, 2006, at 10:37 PM, Chris McCormick wrote:
On Sun, Nov 19, 2006 at 03:40:51PM -0500, Hans-Christoph Steiner
wrote:On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you could easily get aliased harmonic frequencies. There's a few threads in the archive about avoiding this. My personal solution is to use [plugin~] with the BLOP LADSPA oscillator plugins.
I wonder how hard it would be to implement the BLOP LADSPA algorithm in Pd, so that there would be native anti-aliased oscilators. Its something that Pd sorely needs.
I am a big fan of these ones, by Günter:
http://lists.puredata.info/pipermail/pd-list/2006-05/038681.html
There are so many great patches posted to this list, there should be
a better way to search the list for patches. Any perl, python, etc
master want to write a script to pull out all of the patches from the
list archives? That would be amazing.
.hc
The arc of history bends towards justice. - Dr. Martin Luther
King, Jr.
Hans-Christoph Steiner ha scritto:
On Nov 20, 2006, at 10:37 PM, Chris McCormick wrote:
On Sun, Nov 19, 2006 at 03:40:51PM -0500, Hans-Christoph Steiner wrote:
On Nov 19, 2006, at 11:19 AM, derek holzer wrote:
hard off wrote:
ah thanks. a triangle oscillator is exactly what i need. cheers.
Keep in mind that none of these are anti-aliased AFAIK, so you could easily get aliased harmonic frequencies. There's a few threads in the archive about avoiding this. My personal solution is to use [plugin~] with the BLOP LADSPA oscillator plugins.
I wonder how hard it would be to implement the BLOP LADSPA algorithm in Pd, so that there would be native anti-aliased oscilators. Its something that Pd sorely needs.
I am a big fan of these ones, by Günter:
http://lists.puredata.info/pipermail/pd-list/2006-05/038681.html
There are so many great patches posted to this list, there should be a better way to search the list for patches. Any perl, python, etc master want to write a script to pull out all of the patches from the list archives? That would be amazing.
http://lists.puredata.info/pipermail/pd-list/attachments/
?
well, pulling that url with wget -r (apart of generating a LOT of traffic) would result in a big mess of unordered attachments.... but at least it is a start
Hallo, Chris McCormick hat gesagt: // Chris McCormick wrote:
I wonder how hard it would be to implement the BLOP LADSPA algorithm
in Pd, so that there would be native anti-aliased oscilators. Its
something that Pd sorely needs.I am a big fan of these ones, by GÃŒnter:
http://lists.puredata.info/pipermail/pd-list/2006-05/038681.html
So juicy.
Another way to get alias-free waveforms is through summation formulas. Attached is an implementation of the gbuzz opcode. Note that this isn't actually bandlimited, but when choosing the harmonicity value "a" not too high, high frequencies have reasonably low amplitue ... and it's a patch I had here. The classical paper on this is James A. Moorer's "The Synthesis of Complex Audio Spectra by Means of Discrete Summation Formulas" available here: http://www.jamminpower.com/main/articles.jsp
Frank Barknecht _ ______footils.org_ __goto10.org__
Hallo, hard off hat gesagt: // hard off wrote:
does anybody know how to make an up-down saw-wave ?
phasor~ just ramps up and then goes straight back to 0, but i want something that ramps up then back down again.
doc/3.audio.examples/J05.triangle.pd
i know it's possible to use a [metro] and [line~] based solution, but that falls apart at high frequencies.
You could use [vline~] instead and replace the metro, which has a lower limit for its period of 1ms, with a [delay]-based metro as attached, that can go as fast as you like.
Frank Barknecht _ ______footils.org_ __goto10.org__
hard off wrote:
does anybody know how to make an up-down saw-wave ?
i'm quite new to pd, so maybe there is a more elegant method...
to make a triangle wave i have used a phasor, and clipped both, the phasor and 1-phasor with a range of 0..0.5. then added both signals (and subtracted 0.5 or 0.75 and scaled, if necessary).
bis denn! martin
Hallo, martin brinkmann hat gesagt: // martin brinkmann wrote:
hard off wrote:
does anybody know how to make an up-down saw-wave ?
i'm quite new to pd, so maybe there is a more elegant method...
to make a triangle wave i have used a phasor, and clipped both, the phasor and 1-phasor with a range of 0..0.5. then added both signals (and subtracted 0.5 or 0.75 and scaled, if necessary).
The approach of 3.audio.examples/J05.triangle.pd in Miller's docs is a bit more elegant, as it does the same with less objects and allows for easier scaling. (The "crossover-point" of the minimum of the sum of a phasor and 1-phasor is at 0.5 so the clipping is kind of built-in in [min~]).
Attached patch illustrates his approach with a "message based" phasor and compares it to your clipping method.
Frank Barknecht _ ______footils.org_ __goto10.org__
Frank Barknecht wrote:
Attached patch illustrates his approach with a "message based" phasor and compares it to your clipping method.
thanks, that is a good visualization of the different methods.
i should have 'rtfm' before i had build my subtractive-synth patches... ;)
bis denn! martin
Hallo, martin brinkmann hat gesagt: // martin brinkmann wrote:
Frank Barknecht wrote:
Attached patch illustrates his approach with a "message based" phasor and compares it to your clipping method.
thanks, that is a good visualization of the different methods.
i should have 'rtfm' before i had build my subtractive-synth patches... ;)
Not at all! I think, it's a good approach to first try and make something that works on your own instead of just copying stuff from someone else, because maybe only then one can appreciate the beauty of a "better" solution found later and one will have a deeper understanding of *why* the other solution is "better".
And of course there is a time, when there is not other solution available to copy and paste.
Frank Barknecht _ ______footils.org_ __goto10.org__
Hey you may be new to Pd, but I remember playing around with some awesome Martin Brinkmann Reaktor patches like 5 years ago! Nice to see you've joined the list.
~Kyle
On 11/20/06, martin brinkmann mnb@martin-brinkmann.de wrote:
Frank Barknecht wrote:
Attached patch illustrates his approach with a "message based" phasor and compares it to your clipping method.
thanks, that is a good visualization of the different methods.
i should have 'rtfm' before i had build my subtractive-synth patches... ;)
bis denn! martin
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Hallo, Kyle Klipowicz hat gesagt: // Kyle Klipowicz wrote:
Hey you may be new to Pd, but I remember playing around with some awesome Martin Brinkmann Reaktor patches like 5 years ago!
And there already are some awesome Pd patches on http://www.martin-brinkmann.de/pd-patches.html I like the funky groovebox, and the others as well.
(The subpatches could profit from an interior decorator, though. ;)
Frank Barknecht _ ______footils.org_ __goto10.org__
Am 20.11.2006 um 18:27 schrieb Frank Barknecht:
Hallo, Kyle Klipowicz hat gesagt: // Kyle Klipowicz wrote:
Hey you may be new to Pd, but I remember playing around with some
awesome Martin Brinkmann Reaktor patches like 5 years ago!And there already are some awesome Pd patches on http://www.martin-brinkmann.de/pd-patches.html I like the funky groovebox, and the others as well.
awsome presets in the groovebox. sounds like afx analord... nice.
sounds like afx analord... nice.
nice indeed... but still, the attack on those synths/filters cant be compared with analog...
On Mon, 20 Nov 2006 18:41:21 +0200, "Max Neupert" abonnements@revolwear.com said:
Am 20.11.2006 um 18:27 schrieb Frank Barknecht:
Hallo, Kyle Klipowicz hat gesagt: // Kyle Klipowicz wrote:
Hey you may be new to Pd, but I remember playing around with some
awesome Martin Brinkmann Reaktor patches like 5 years ago!And there already are some awesome Pd patches on http://www.martin-brinkmann.de/pd-patches.html I like the funky groovebox, and the others as well.
awsome presets in the groovebox. sounds like afx analord... nice.
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
threen wrote:
nice indeed... but still, the attack on those synths/filters cant be compared with analog...
you are right, and i should have written 'subtractive' instead of 'virtual analog'. it is just my first, naive attempt to make such a synth in pd, and i have not cared at all for any authentic analog emulation. though i like the kind of 'rough' digital sound, i will probably try to make bandlimited oscs, use upsampling etc. in the future.
bis denn! martin
you are right, and i should have written 'subtractive' instead of 'virtual analog'
im not defending/attacking anything ... its just the fact that the analog cliped signal sounds much more convincing when comparing with digital "hysteria"
best
On Wed, 22 Nov 2006 16:07:27 +0100, "martin brinkmann" mnb@martin-brinkmann.de said:
threen wrote:
nice indeed... but still, the attack on those synths/filters cant be compared with analog...
. it is just my first, naive attempt to make such a
synth in pd, and i have not cared at all for any authentic analog emulation. though i like the kind of 'rough' digital sound, i will probably try to make bandlimited oscs, use upsampling etc. in the future.
bis denn! martin
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
threen wrote:
im not defending/attacking anything ... its just the fact that the analog cliped signal sounds much more convincing when comparing with digital "hysteria"
hmm, yes, maybe. i think it depends on the context where the sound is used... btw: are there any good saturation/distortion patches? i have tried it with a table, but it souned not very convincing, so i have used simple clipping instead.
bis denn! martin
i prefer to "clip" with a tube amp or whatever outside digital media (which is good at other points)
On Thu, 23 Nov 2006 22:01:15 +0100, "martin brinkmann" mnb@martin-brinkmann.de said:
threen wrote:
im not defending/attacking anything ... its just the fact that the analog cliped signal sounds much more convincing when comparing with digital "hysteria"
hmm, yes, maybe. i think it depends on the context where the sound is used... btw: are there any good saturation/distortion patches? i have tried it with a table, but it souned not very convincing, so i have used simple clipping instead.
bis denn! martin
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
On 21/11/2006, at 2.18, threen wrote:
sounds like afx analord... nice.
nice indeed... but still, the attack on those synths/filters cant be compared with analog...
Im sure Max Neupert was refering to Richard D. James/Aphex Twin/AFX's
Analord records rather then analog synth (emulation). That might be
well understood by all.
best, steffen
sorry, forgot Dr. James still existed. then what would we be refering to if he didnt. would that be understood as well and would that change the use of filter technics in conventional/commercial way
On Wed, 22 Nov 2006 18:04:50 +0100, "Steffen" stffn@dibidut.dk said:
On 21/11/2006, at 2.18, threen wrote:
sounds like afx analord... nice.
nice indeed... but still, the attack on those synths/filters cant be compared with analog...
Im sure Max Neupert was refering to Richard D. James/Aphex Twin/AFX's
Analord records rather then analog synth (emulation). That might be
well understood by all.best, steffen
Max Neupert wrote:
I like the funky groovebox, and the others as well.
awsome presets in the groovebox. sounds like afx analord... nice.
it is nice to hear that you like them. and it is also nice to hear that my patches seem to be working on other peoples systems too. though i have a slight problem, especially with the groovebox-patch myself:
sometimes, when i close the patch (especially when i have opend some subpatches before), not only the groovebox is closed, but also all other open windows + the pd application. this has also happend with 'grainstates', but less often. it might have something to do with using (too) many ui-objects, and/or with my relatively slow machine (?)
bis denn! martin
On 22/11/2006, at 15.54, martin brinkmann wrote:
it is nice to hear that you like them. and it is also nice to hear that my patches seem to be working on other peoples systems too.
Works here too (osx i386 pd-extended). It was great fun trying to
figure how they worked i the user end (i didn't complete, but got
some stuff straight).
though i have a slight problem, especially with the groovebox-patch myself:
sometimes, when i close the patch (especially when i have opend some subpatches before), not only the groovebox is closed, but also all other open windows + the pd application.
I think i experienced the same, but just thought i did something
wrong myself.
Thanks again,
Steffen
Steffen wrote:
Works here too (osx i386 pd-extended). It was great fun trying to figure how they worked i the user end (i didn't complete, but got some stuff straight).
thats good news, sice i tried it once with a nightly build of pd extended, and could not get the groovebox to work. it only produced a lot of "'' expected but got bang" error-messages, and since jack-audio-out did not work either i de-installd pd-extended, and went back to pd 0.39 (the one from the ubuntu 6.06 repository)
bis denn! martin
On Nov 22, 2006, at 4:19 PM, martin brinkmann wrote:
Steffen wrote:
Works here too (osx i386 pd-extended). It was great fun trying to
figure how they worked i the user end (i didn't complete, but got
some stuff straight).thats good news, sice i tried it once with a nightly build of pd extended, and could not get the groovebox to work. it only produced a lot of "'' expected but got bang" error-messages, and since jack-audio-out did not work either i de-installd pd-extended, and went back to pd 0.39 (the one from the ubuntu 6.06 repository)
It would be good to have bug reports in the bug tracker since we are
working towards a release.
.hc
Terrorism is not an enemy. It cannot be defeated. It's a tactic.
It's about as sensible to say we declare war on night attacks and
expect we're going to win that war. We're not going to win the war
on terrorism. - retired U.S. Army general, William Odom
On 22/11/2006, at 15.54, martin brinkmann wrote:
sometimes, when i close the patch (especially when i have opend some subpatches before), not only the groovebox is closed, but also all other open windows + the pd application.
Attached is a patch (with an abstraction) that, i think illustrates
the problem Martin experiences.
Following the procedure described in it will (says Hume knowing about
the small set of empirical data i've experienced) crash Pd.
I will add it to the tracker (shortly), if it's not know.
WOW! This is great. We are so lucky to have such a distinguished contributor.
Keep 'em coming!
~Kyle
On 11/20/06, Frank Barknecht fbar@footils.org wrote:
Hallo, Kyle Klipowicz hat gesagt: // Kyle Klipowicz wrote:
Hey you may be new to Pd, but I remember playing around with some
awesome
Martin Brinkmann Reaktor patches like 5 years ago!
And there already are some awesome Pd patches on http://www.martin-brinkmann.de/pd-patches.html I like the funky groovebox, and the others as well.
(The subpatches could profit from an interior decorator, though. ;)
Ciao
Frank Barknecht _ ______footils.org_ __goto10.org__
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
sorry, i could not reply earlier, because i had no internet for about 2 days. (thanks t-...)
Frank Barknecht wrote:
http://www.martin-brinkmann.de/pd-patches.html I like the funky groovebox, and the others as well.
(The subpatches could profit from an interior decorator, though. ;)
i agree that my patches look pretty messy. though this is mainly because i am lazy ;), but i also try to avoid a 'misleading layout', where the objects are all aligned orthogonally, and it is sometimes hard to tell wether the left or right inlet is connected for example.
using more subpatches/abstractions would probably help...
bis denn! martin
Hallo, martin brinkmann hat gesagt: // martin brinkmann wrote:
(The subpatches could profit from an interior decorator, though. ;)
i agree that my patches look pretty messy. though this is mainly because i am lazy ;), but i also try to avoid a 'misleading layout', where the objects are all aligned orthogonally, and it is sometimes hard to tell wether the left or right inlet is connected for example.
using more subpatches/abstractions would probably help...
I don't have a real problem with your patch and I think they are amazing.
They really could profit from abstractions however. You have a lot of duplicated functionality (sequencers, synths) that would be useful to have in single files for better reusability. However then you should also protect all senders and receivers with $0 and make them local to the abstraction, so that you don't "overwrite" receivers already in use outside of your abstractions.
Regarding cleaning up patches: The goal of cleaning up should be readability IMO, not just "nice looks", so yes, avoiding misleading connections running on top of each other should be a priority. I collected some simple "rules" (meant to be broken of course) on the Tips and Tricks wiki page:
http://puredata.info/docs/tutorials/TipsAndTricks#keep-your-patches-nice-cle... (one line)
It includes two screenshots of a patch before and after the diet.
It also occured to me that you are doing all the sequencing using audio signals. While this allows a very tight timing and is common practice among Max users, I don't think it is strictly necessary in Pd. A simple [metro] and [vline~] will be just as tight as using a [phasor~] for sequencing - also because [metro] and [vline~] can be used as an equivalent replacement for [phasor~] even with subsample timing accuracy.
In the long run you could save quite some CPU cycles by using the more traditional clock-based sequencing where possible.
Frank Barknecht _ ______footils.org_ __goto10.org__
Oh man, what a great selection of tips! I especially love the sed/perl quick-replace commands, and the extra b's and a's in trigger (to avoid that always unpleasant re-wiring).
~Kyle
On 11/22/06, Frank Barknecht fbar@footils.org wrote:
Hallo, martin brinkmann hat gesagt: // martin brinkmann wrote:
(The subpatches could profit from an interior decorator, though. ;)
i agree that my patches look pretty messy. though this is mainly because i am lazy ;), but i also try to avoid a 'misleading layout', where the objects are all aligned orthogonally, and it is sometimes hard to tell wether the left or right inlet is connected for example.
using more subpatches/abstractions would probably help...
I don't have a real problem with your patch and I think they are amazing.
They really could profit from abstractions however. You have a lot of duplicated functionality (sequencers, synths) that would be useful to have in single files for better reusability. However then you should also protect all senders and receivers with $0 and make them local to the abstraction, so that you don't "overwrite" receivers already in use outside of your abstractions.
Regarding cleaning up patches: The goal of cleaning up should be readability IMO, not just "nice looks", so yes, avoiding misleading connections running on top of each other should be a priority. I collected some simple "rules" (meant to be broken of course) on the Tips and Tricks wiki page:
http://puredata.info/docs/tutorials/TipsAndTricks#keep-your-patches-nice-cle... (one line)
It includes two screenshots of a patch before and after the diet.
It also occured to me that you are doing all the sequencing using audio signals. While this allows a very tight timing and is common practice among Max users, I don't think it is strictly necessary in Pd. A simple [metro] and [vline~] will be just as tight as using a [phasor~] for sequencing - also because [metro] and [vline~] can be used as an equivalent replacement for [phasor~] even with subsample timing accuracy.
In the long run you could save quite some CPU cycles by using the more traditional clock-based sequencing where possible.
Ciao
Frank Barknecht _ ______footils.org_ __goto10.org__
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Frank Barknecht wrote:
...
thanks for the many tipps!
In the long run you could save quite some CPU cycles by using the more traditional clock-based sequencing where possible.
in the past (reaktor) i have used the songposition most of the time, and made everything counter-based. (always perfectly in sync, but harder to manually re-sync). since i was happy that my first pd patch (a 'rockafella'-based loop-player) was running pretty well (and in sync) with this pahsor based approach, i continued to use this method. i agree that it is a waste of cpu. maybe id would be a good idea to use only one phasor (or a vline based 'phasor') to drive a counter and than use this counter for the different sequencers. at least when it is not neccessary to sync the different modules independently. (groovebox2...)
bis denn! martin
Hallo, martin brinkmann hat gesagt: // martin brinkmann wrote:
in the past (reaktor) i have used the songposition most of the time, and made everything counter-based. (always perfectly in sync, but harder to manually re-sync). since i was happy that my first pd patch (a 'rockafella'-based loop-player) was running pretty well (and in sync) with this pahsor based approach, i continued to use this method. i agree that it is a waste of cpu. maybe id would be a good idea to use only one phasor (or a vline based 'phasor') to drive a counter and than use this counter for the different sequencers. at least when it is not neccessary to sync the different modules independently. (groovebox2...)
Actually for a rather deep technical reason re-syncing of a [phasor~] is not as accurate in Pd as resyncing a clock-based timing message like the ones generated by [metro].
The background is: The right inlet of [phasor~] or [osc~] which set the phase will only accept messages on block boundaries of 64 samples. So you cannot sync anything more exact than about 1.5msec. Clock-derive messages like those of metro, delay, pipe or qlist can be used in conjunction with vline~ to overcome this 64-samples limit. The difference between both is illustrated in attached patch.
Frank Barknecht _ ______footils.org_ __goto10.org__
Frank Barknecht wrote:
difference between both is illustrated in attached patch.
thanks, ok, i think i will use metro in most future pd-sequencer patches, instead of my old phasor-method... it was a 'quick-and-dirty' solution anyway, since i have sampled the phasor with metro 3 or 2 and snapshot (so there would have been no benefit from the audio-phasor), i thougt something like the 200 hz 'control-rate a la reaktor' would be sufficient. maybe the main reason for using the phasor was, that i had read something about timing-issues with the metro object. (i can not recall it exactly...)
bis denn! martin
On Thu, 2006-11-23 at 21:57 +0100, martin brinkmann wrote:
maybe the main reason for using the phasor was, that i had read something about timing-issues with the metro object. (i can not recall it exactly...)
i heard also something about an issue with [metro] from max/msp users, something about that it has audible jitter. honestly i don't quite trusted these rumours, since i often experienced that people suspect a software to be buggy, but actually made the mistakes by themselves. but now i wonder, if there is really some flesh on these rumours.
is there something wrong with metro, i never noticed myself?
roman
___________________________________________________________ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de
Hello,
A nice way of generating a triangle wave is by integrating a square wave... You can do this using the biquad~ object.
Steve
#N canvas 87 77 687 583 10; #X obj 193 122 tabwrite~ array1; #N canvas 0 0 450 300 graph1 0; #X array array1 10000 float 2; #X coords 0 1 9999 -1 200 140 1; #X restore 433 62 graph; #X obj 97 186 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 180 77 osc~ 10; #N canvas 0 0 450 300 graph1 0; #X array array2 10000 float 2; #X coords 0 1 9999 -1 200 140 1; #X restore 433 235 graph; #N canvas 0 0 450 300 graph1 0; #X array array3 10000 float 2; #X coords 0 1 9999 -1 200 140 1; #X restore 433 402 graph; #X obj 189 201 tabwrite~ array2; #X obj 181 285 tabwrite~ array3; #X obj 180 157 clip~ -0.001 0.001; #X obj 181 244 biquad~ 1 0 0 -1 0; #X connect 2 0 0 0; #X connect 2 0 6 0; #X connect 2 0 7 0; #X connect 3 0 0 0; #X connect 3 0 8 0; #X connect 8 0 6 0; #X connect 8 0 9 0; #X connect 9 0 7 0;
Hallo, Frank Barknecht hat gesagt: // Frank Barknecht wrote:
Attached patch illustrates his approach with a "message based" phasor and compares it to your clipping method.
Actually the message-phasor wasn't a "phasor" in the previous patch, it already was a triangle! Attached is the fixed version which should show that I wasn't trying to cheat with that error.
Frank Barknecht _ ______footils.org_ __goto10.org__