Re: [PD] recursive controls problem
Hi, you could use a "set $1"-message to only set the slider's display value without letting it propagate the new value to its outlet. Ciao -- Frank On Fri, May 09, 2014 at 01:24:34AM -0400, plutek infinity wrote: > greetings! > > i'm sure this is a simple problem, but i can't seem to come up with > the solution... > > i'm trying to control one numerical value in a few ways: > > 1. have a bang to set an initial value > 2. have a slider for mouse control > 3. use keyboard keys to increment and decrement > > the attached patch all works, except i ALSO want the slider position > to pick up the current value, as changed by any of the other > methods. > > the problem is, of course, that if i connect the expr result back up > to the slider input, i get a loop with "stack overflow" errors. > > i'd be most grateful for any pointers you can offer... thanks much! > > cheers! > .pltk. > > #N canvas 0 29 958 1049 10; > #X obj 54 95 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 > -1; > #X msg 55 117 0.9; > #X obj 251 122 key; > #X obj 251 144 select 113; > #X obj 125 330 expr $f1+$f2; > #X msg 251 167 0.05; > #X floatatom 125 352 5 0 0 0 - - -, f 5; > #X obj 89 69 hsl 128 15 0 1 0 0 empty empty empty -2 -8 0 10 -262144 > -1 -1 1000 1; > #X obj 211 183 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 > -1 -1; > #X obj 150 297 float; > #X obj 369 116 key; > #X obj 333 178 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 > -1 -1; > #X obj 369 138 select 97; > #X msg 369 161 -0.05; > #X msg 184 134 0; > #X connect 0 0 1 0; > #X connect 0 0 14 0; > #X connect 1 0 9 0; > #X connect 2 0 3 0; > #X connect 3 0 5 0; > #X connect 4 0 6 0; > #X connect 4 0 9 1; > #X connect 5 0 4 1; > #X connect 5 0 8 0; > #X connect 7 0 9 0; > #X connect 7 0 14 0; > #X connect 8 0 9 0; > #X connect 9 0 4 0; > #X connect 10 0 12 0; > #X connect 11 0 9 0; > #X connect 12 0 13 0; > #X connect 13 0 11 0; > #X connect 13 0 4 1; > #X connect 14 0 4 1; > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] declare and abstraction
Hi Cyrille, I struggled with that for a long time myself. Unless something changed in 0.44/0.45 the only really reliable solution I found was to *only* use [declare] in a *toplevel* file, and never in any abstraction. So for your layout I would only put a [declare] into "patch.pd" like: In patch.pd: [declare -path . -path dir1 -path dir2 -path dir1/abstraction1 -path dir2/abstraction2] Note that the first path that I always set is to the current directory (".") - it's useful to have as well. Ciao -- Frank On Tue, Oct 08, 2013 at 02:50:24PM +0200, Cyrille Henry wrote: > Hello, > > I'm trying to setup a project organised in folder like this : > > projet/ > dir1/ > abstraction1/ > foo > patch1.pd > > dir2/ > abstraction2 > bar > patch2.pd > patch.pd > > in patch1.pd, i've got a declare -path abstraction1 so that i can use the foo > abstraction > same in patch2 : declare -path abstraction2 to use the bar abstraction > patch1 and patch2 are autonomous. > > now, in patch.pd, I want to use patch1 and patch2. > when using declare -path dir1, I can use patch1, but the declare in patch1 > is relative to the projet directory, not to the dir1, so foo is not found. > > when using dir2/patch2, it's the same problem. > > i would like that patch1 and patch2 deal with the declaration of path for > abstraction there are using. And i would like to be able to use patch1 and > patch2 in patch, without having to add declaration. > i know that there is a warning in declare help not to do that. > > so, what is the vanilla way to organised project like that? > > for now, the solution i found is to organised things like this : > > projet/ > dir1/ > abstraction1/ > foo > patch1.pd > > dir2/ > abstraction2 > bar > patch2.pd > all/ > patch.pd > > and using declare -path ../patch1/abstraction1 in patch1. > but i don't really like that. > > > thanks > cheers > Cyrille > > > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] reading tables indices with liner interpoation
On Sat, Oct 05, 2013 at 12:23:00AM +0100, peiman khosravi wrote: > I'm trying to figure out if there is an object to read table indices with > linear interpolation? Other than linear_path (Gem). > > Or perhaps there is a simpler way of doing it? I made one as an abstraction some time ago, it's attached. Ciao -- Frank tabread-lin-help.pd Description: application/puredata tabread-lin.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sum of delays...
Hi Mario, On Mon, Sep 23, 2013 at 08:44:15PM -0300, Mario Mey wrote: > Your router.pd is the one I was looking for for the router > connection. Because I had done a dozens-of-wires connection... a > mess. I use that technics, now, it is beautifull. Thank you. Great to hear! > Is it better to have controls outside the audio-working abstracts > and subpatches? I mean, having abstracts and subpatches without GOP > and having all the buttons connected with send and receive from > properties? I hate this method... but, if it is better... GUI objects that don't receive any input through their inlets, their receives or by mouse don't use any CPU ressources. So feel free to keep them wherever you want. But when you control the patch via tablet, make sure you completly bypass the GUI objects for maximum performance. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sum of delays...
On Sun, Sep 22, 2013 at 12:09:53AM +0100, Ed Kelly wrote: > > > >if you can I would prefer to patch with direct connections as it may make > >things clearer. Attach is a little sketch (router.pd) which uses no > >signal-sends and -receives at all, so you can be sure to have no delays > >introduced. Still you can route all over - but of course feedback paths are > >not > >possible. > > > Oh yes they are. > > If you send the audio you want to feed back into a [delwrite~ feedbuf > 10] object, and then take the audio back into the feedback loop using > a [delread~ feedbuf 0] object, you can bypass the problem with > feedback loops (stack overflow) and can create audio feedback > networks. Yeah, but actually the goal here was to avoid introducing any delays and that's only possible if you avoid feedback as well. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sum of delays...
Hi Mario, if you can I would prefer to patch with direct connections as it may make things clearer. Attach is a little sketch (router.pd) which uses no signal-sends and -receives at all, so you can be sure to have no delays introduced. Still you can route all over - but of course feedback paths are not possible. Ciao -- Frank On Fri, Sep 20, 2013 at 09:04:03AM -0300, Mario Mey wrote: > Thanks Frank, I understand the way Pd uses the sort. But I have to > tell you that my patch has a Sound Router, as the attached file > shows. With that router, I have different possibilities (The FX > consoles are abstracts, also the Sample Banks): > > *Mic --> FX console A -> FX console B -> Output > Sample Banks / > > Mic ---> FX console A -> FX console B -> Output > Sample Banks / > > Sample Banks ---> FX console A -> FX console B -> Output >Mic / > > Mic -> FX console A --> Output > Sample Banks -> FX console B / > > Sample Banks -> FX console A --> Output > Mic -> FX console B /** > *** > And, with RESAMPLE FUNCTION (only one example): > > *Mic --> FX console A -> FX console B -> Output** > **Sample Banks / \ Sample **Banks (resample) > * > The Sound Router is a subpatch in the main patch. > > How about using s~ in the Sound Router (subpatch) and r~ in the main > patch and, then, cord-connecting to the abstracts? (Instead of using > r~ inside the abstract). > > The default use of this patch (when I use the mic to talk to the > people) is the first example (although the FX consoles are off). > Maybe, if I need to sort only in one way, I should sort following > these example. > > Thanks again. > > > PD: I have to say that I'm having a good latency using this patch, > but maybe it could be better, only sorting in the right way. In > other words, I'm not desperate to improve this. > > > > > > > > El 19/09/13 16:35, Frank Barknecht escribió: > >Hi, > > > >On Thu, Sep 19, 2013 at 02:20:28PM -0300, Mario Mey wrote: > >>I think most of s/r and throw/catch are between abstracts. If I want > >>to sort that objects (as Theory of Operation says: creating receive~ > >>after send~)... I don't know how to do it. > >To trick Pd into sorting signal objects, that are not directly connected with > >some patchcords (like sends), you must put them into subpatches or > >abstractions > >and then connect these. > > > >For example this here will be unsorted: > > > > > > [sig~ 1] > > [sig~ 2] > > [sig~ 3] > > > >But this will be sorted: > > > > [sig~ 1] > > | > > [sig~ 2] > > | > > [sig~ 3] > > > >and this will also be sorted: > > [pd sig~1-inside] > > | > > [pd sig~2-inside] > > | > > [pd sig~3-inside] > > > >where each subpatch has something like this inside: > > > > [inlet~] [outlet~] [sig~ 1] > > > >The 3 objects inside the subpatch don't need do be connected at all, only the > >subpatches have to be connected to force an order. > > > >In the end, you have now tricked Pd to execute signals in the order 1, 2 and > >3, > >although they aren't connected to anything. The order, in which these objects > >have been created doesn't matter and you should never rely on creation order > >anyway. > > > >Instead of subpatches you can use abstraction, but you have to connect these > >just as you have connected the subpatches. > > > >Ciao > > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank Barknecht _ __footils.org__ router.pd Description: application/puredata routing.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sum of delays...
Hi, On Thu, Sep 19, 2013 at 02:20:28PM -0300, Mario Mey wrote: > I think most of s/r and throw/catch are between abstracts. If I want > to sort that objects (as Theory of Operation says: creating receive~ > after send~)... I don't know how to do it. To trick Pd into sorting signal objects, that are not directly connected with some patchcords (like sends), you must put them into subpatches or abstractions and then connect these. For example this here will be unsorted: [sig~ 1] [sig~ 2] [sig~ 3] But this will be sorted: [sig~ 1] | [sig~ 2] | [sig~ 3] and this will also be sorted: [pd sig~1-inside] | [pd sig~2-inside] | [pd sig~3-inside] where each subpatch has something like this inside: [inlet~] [outlet~] [sig~ 1] The 3 objects inside the subpatch don't need do be connected at all, only the subpatches have to be connected to force an order. In the end, you have now tricked Pd to execute signals in the order 1, 2 and 3, although they aren't connected to anything. The order, in which these objects have been created doesn't matter and you should never rely on creation order anyway. Instead of subpatches you can use abstraction, but you have to connect these just as you have connected the subpatches. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sum of delays...
On Thu, Sep 19, 2013 at 01:52:37PM -0300, Mario Mey wrote: > I was guessing... if I made a sum of delays using so many send~ / > receive~ and throw~ / catch~... > > For a full use of my patch (mic input -> FX-A -> FX-B -> output), I > have this structure (inside subpatches and abstracts): ... > Does every send~ / receive~ and throw~ / catch~ adds a 1 block delay? No, not at all. They only need to add a block of delay, if you use a feedback path, which you are not as far as I see. However you have to force the order of execution of your non-local signal connections with s~/r~ and throw~/catch~ to avoid delays that Pd might introduce when doing its own ordering. Do this by adding some subpatches as described in the help file: 3.audio.examples/G05.execution.order.pd or use direct connections where possible. > I'm using 48000, so, do I have 1.333ms * 10 = 13ms of delay because > of using that objects? Block delays with non-local connections will only happen if you don't do order forcing. But if you are careful, you will have zero delay. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] u_samplekit2 text file formatting
Hi, great to hear that you've solved it. Maybe you can add [declare -path .] to you toplevel main Pd file to add its directory to the search path. Then you can use it as a main point of reference for relative path names. Ciao -- Frank On Sat, Sep 14, 2013 at 03:26:37PM -0700, Joe Newlin wrote: > Okay, so I solved the issue myself by using the absolute directory path in > the open message, and it was an issue with [textfile] within [u_dumpfile] > not receiving the correct path in the open message. > > On Sat, Sep 14, 2013 at 2:54 PM, Joe Newlin wrote: > > > Hello, > > > > I'm trying to use the u_samplekit2 abstraction from rjlib, and having > > trouble getting it to work. > > > > The help file says that the directory containing the samples must also > > contain a text file named "index.txt" that maps filenames to numbers. But > > it does not say how exactly one is supposed to enter that information in > > the text file. I tried writing a couple of lines to test it ("g1" and "g2" > > are sample filenames): > > > > g1 0 > > g2 1 > > > > ...and I get these errors: > > > > /samples/index.txt: can't open > > /samples/index.txt: read failed > > > > > > The "samples" directory is located in the same directory as the patch. > > > > Can someone teach me how to use this? > > > > Thanks, > > > > Joe > > > > -- > > www.joenewlin.net > > www.twitter.com/joe_newlin > > > > > > -- > www.joenewlin.net > www.twitter.com/joe_newlin > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Scaling values in pd
On Mon, Sep 02, 2013 at 06:17:37PM +0200, hghoyer wrote: > in Max/MSP there is an object for simple scaling. > > If you create in MAX these object with this arguments: > > [scale 0 127 0 500] incomming messages from 0 to 127 are automatically > scaled from 0 to 500... > > Is in PD a similar easyly way to scale values? You can use an abstraction like m_scale.pd from the ri-library (attached) for this. Or just divide by 127 and multiply with 500. :) Ciao -- Frank Barknecht _ __footils.org__ m_scale.pd Description: application/puredata m_scale-help.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Reading txt file inside folder
On Wed, Aug 28, 2013 at 07:31:54PM -0700, Ronni Montoya wrote: > hi,[read ../data/colors.txt ( doesnt work here on macosx. > > I ve tried in the following way and it worked. > > [ read data/colors.txt ( > > > I was wondering if the way im doing this will allow the patch to work > only on macosx? > > If yes, is there is a way of solving this? Pd's way of referencing files with relative paths can be a bit peculiar, because depending on where your patches and abstractions are and what is the Pd search path you have configured, Pd might use different places to start its file search. Unless you can use absolute paths, in my experience a good way to help Pd looking for files is to use a [declare]-object in your toplevel patch to add the directory, where the toplevel patch file is to the search path. So in your toplevel file, lets assume it's called "main.pd", use declare like this: [declare -path .] The final dot (".") is the current directory, where main.pd is, which would be "workdir" in a tree like this: - workdir/ - main.pd<- add [declare -path .] here and use as main patch - other.pd - mylib/ filereader.pd - data1/ - colors.txt - data2/ - colors.txt After that can use all these to open files: [read data1/colors.txt ( [read ../data2/colors.txt ( and it should even work, if yout have a [mylib/filereader] abstraction in main.pd, that has your [textfile] inside. All this is not dependent on the operating system, so it will work on OS-X, Linux, iOS, Android, etc. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] CPU usage of GUI objects in subpatches
Hi, I didn't test current Pd versions nor your fork, but up to 0.43 GUI objects in subpatches or abstractions were a substantial and significant CPU load when they are activated, even when invisible. So this is slow: [r data] | [hsl ...] | [s data-out] But this is fast: [r data] | | [hsl ...] |/ [s data-out] Maybe this has changed now with the latest versions, so I would recommend to benchmark it again. Ciao -- Frank On Sun, Jul 14, 2013 at 12:16:24PM -0400, Ivica Ico Bukvic wrote: > AFAIK none--if it is not visible, its gui calls are ignored. > From: pd-list-boun...@iem.at [mailto:pd-list-boun...@iem.at] On Behalf Of i > go bananas > Sent: Sunday, July 14, 2013 4:01 AM > To: PD List > Subject: [PD] CPU usage of GUI objects in subpatches > > > > I'm assuming of course that no GUI objects in subpatches is optimal. but > what sort of effect do sliders. toggles, bangs, etc have on CPU usage when > hidden in unopened subpatches? > > > > > > ___ > 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
Re: [PD] l2ork: SSSAD loads but doesn't save presets
Hi, On Sun, Jun 23, 2013 at 09:42:54PM +0200, András Murányi wrote: > I've been having a problem with SSSAD for a few weeks: it's able to load > presets, but when it comes to saving, an empty state is written (i mean, it > does write but it overwrites the previous content of the preset with > nothingness). The example patches don't work either. > There are no errors in the console and I have also overwritten the whole > SSSAD folder with a newly downloaded one, still no joy. > Tested in vanilla and it works. sssad.pd itself doesn't write anything to disk, so there must be something else that's doing the writing. What sssad does is sending messages to receivers called SSSAD_ADMIN and SSSAD or to semi-global receivers called $2-SSSAD_ADMIN and $2-SSSAD for [sssad] objects with a second argument different from 0. You can try to read and [print] these receivers to debug if no data is received. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Crossfade between 2 rj lib save states?
On Tue, May 14, 2013 at 12:21:10AM -0700, JF wrote: > > it's been a long time since i looked at rj, but from memory it uses > > something similar to sssad for statesaving, doesn't it? So, you assign > > keys to each of your abstractions and save according to those keys, yeah? > > > in that case, i would just bundle my entire 'scene' into a bigger parent > > abstraction, and use a $0 (or similar) prefix to all my state saving keys > > > so that state loading would be local only to that parent, and not to the > > > other channel's parent. > > Thanks! > > I presume this approach would mean having two copies of the 'meat' of the > patch running side by side? > > Correct me if I'm wrong. > > I'm hoping to only have one copy of the guts running and have the > crossfading done to the parameters. As my machine is getting older now. > > I'm not looking to crossfade audio at the end. This will be a midi note > and CC generating patch for my synths and samplers to record and to play > live with. However don't rule out audio for speeding up the crossfade itself. Attached is a very fast way of interpolating two 64-element parameter lists using audio operations in a subpacth, that is suspended after each interpolation run using a [switch~] object. Drive this at your desired metro-speed and you have a nice and tidy interpolation system. By using a different block size in the subpatch and bigger tables, you can also extend this to bigger preset list sizes. And it still is very fast - much faster than if you would use a message based approach which involves list unpacking and so on. Ciao -- Frank Barknecht _ __footils.org__ fast-interpolate.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Crossfade between 2 rj lib save states?
On Mon, May 13, 2013 at 11:51:26PM +0900, i go bananas wrote: > >>I'm just wondering how I would have to modify the saving mechanism in the > rj abstraction so that I could have two running side by side? > << > > it's been a long time since i looked at rj, but from memory it uses > something similar to sssad for statesaving, doesn't it? So, you assign > keys to each of your abstractions and save according to those keys, yeah? You're right: The state savign in the rj library is just "sssad", which is included as a copy named [u_sssad]. There are some additional goodies, but basically that's it. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Crossfade between 2 rj lib save states?
Hi, On Mon, May 13, 2013 at 01:44:39AM -0700, JF wrote: > Coming back to pd after a stint in the real world. Have an idea for a patch. > > Would it be possible to crossfade between 2 rj lib save states? The rj saving (or sssad saving, which is at rj's core) can manage parameters of various character - symbols, for example, ot lists with symbols or numbers, that maybe are intended to be used as integers. So crossfading everything blindly is impossible. > I'm just wondering how I would have to modify the saving mechanism in the rj > abstraction so that I could have two running side by side? I would suggest you make some kind of wrapper. You can remote-control all rj parameters via sends and receives, so it's probably not necessary to change the rj state management itself. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] vanilla replacement for polygate~ ?
On Sun, Mar 24, 2013 at 10:22:43PM +0100, Lorenzo Sutton wrote: > On 22/03/13 22:35, Jonathan Wilkes wrote: > >> > >>From: Patrick Pagano > >>To: pd-list@iem.at > >>Sent: Friday, March 22, 2013 3:57 PM > >>Subject: [PD] vanilla replacement for polygate~ ? > >> > >> > >>Hello > >> > >>I was wondering if anyone had an idea for a Vanilla replacement for > > polygate~, which is listed as a switch between multiple signal > > inputs. I would like to make a patch for IPAD/MOBmuPLat that has > > this in the patch but i am wondering what a good vanilla substitute > > might be for it? > > > > > >You can't. Or-- you can, but it will be a cheap imitation that either > >a) always has some maximum number of inlets, or b) uses nonlocal > >receive names to make up for the fact that you cannot dynamically > >instantiate inlets inside an abstraction because the [loadbang] > > It would be relatively easy instead if one could dynamically set the > name for [send~] (like for [receive~]) in vanilla. You can set the name for [throw~], though. But for a [polygate~] variant one would use the settable [r~] anyway, I suppose. The idea would be: [soundgen~ 1] | [s~ s-1] [soundgen~ 2] | [s~ s-2] [set s-1( | [set s-2( | / |/ [r~ s-1] | [dac~] But it's still no polygate~: You get nocrossfades and of course no [inlet~]s. I'd just just patch a [dekagate~] abstraction with 10 fixed inputs and proper fading for Pd vanilla. It's useful to have anyway and you only do it once. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Expression challenge 2013
Hi, On Tue, Mar 19, 2013 at 02:55:24PM +, Pagano, Patrick wrote: > Can you explain to me what this awesome-ness you have created does? > I am assuming it's a expr~ converter, but what is the proper way to deploy > this? That would be cool, but Roman just used a subpatch and patched the inside manually. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] IBM & PureData
Hi, I actually had considered naming the "Blocked Signal Processing (BSP)" idiom which I presented at LAC 2010 "Interrupted Block Mathematics" at first. I didn't. Ciao -- Frank On Thu, Nov 08, 2012 at 10:58:26PM +0900, i go bananas wrote: > illogical bandwidth modulation? > > intermittent bass magnet? > > inlet bypass mechanism? > > isolating beat masher? > > industrial bitcrush monster? > > indie band mutilator? > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] list vs. symbol array [was: Re: Licensing issues]
Hi, On Wed, Nov 07, 2012 at 05:45:49PM -0800, Jonathan Wilkes wrote: > [symbolarray] does indeed take about half as much cpu as using the message > box. It also takes exactly the same cpu as [makefilename %d-tab] which is > much simpler and doesn't require an abstraction. But maybe you needed those > specific names for the tables for some reason... The m_symbolarray-abstraction is a convenience wrapper around [element symarray symbols] | [get sym name] which includes some logic to manage the array's content. [makefilename %d-tab] btw. cannot manage anything. So [makefilename %d-tab] is doing something different. You should not use m_symbolarray to replace it. Only use a symbolic array, where you need it. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
[PD] list vs. symbol array [was: Re: Licensing issues]
On Mon, Nov 05, 2012 at 11:38:00AM -0800, Jonathan Wilkes wrote: > - Original Message - > > From: Frank Barknecht > > > > On Mon, Nov 05, 2012 at 08:26:17AM -0800, Jonathan Wilkes wrote: > >> How many table names total were there in the patch that was overloading > >> the device? > > > > I don't remember anymore, that was in 2009, when the abstraction was first > > posted here on pd-list. > > > > But if you don't believe me, just do some benchmarks on your own and compare > > array access with list filtering. > > It makes no difference if the number of table names is around 100. At 1000 > your > method is certainly faster-- I've just never had a patch with 1000 tables. I'm pretty sure, the patch at that time didn't either. The main problem then was the high frequency with which lookups had to happen. As a special election day service I have written a benchmark showing this situation. On my machine the symbolarray uses about 16 percent CPU at the "metro" period of 0.01 ms while list lookup uses 24. Now 0.01 ms may sound like a tempo you won't encounter in real music, but that's wrong: In chords you play many notes at the same time, the "period" then is a very fast 0 ms. This can generate CPU usage spikes on slow devices if the lookup is too slow - at least that's my explanation for why the symbolarray was able to fix the patch. Ciao -- Frank Barknecht _ __footils.org__ m_symbolarray-help.pd Description: application/puredata m_symbolarray.pd Description: application/puredata sym-vs-mess.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Licensing issues (was rjdj is gone, robotcowboy is coming ...)
Hi, On Mon, Nov 05, 2012 at 08:26:17AM -0800, Jonathan Wilkes wrote: > How many table names total were there in the patch that was overloading > the device? I don't remember anymore, that was in 2009, when the abstraction was first posted here on pd-list. But if you don't believe me, just do some benchmarks on your own and compare array access with list filtering. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Licensing issues (was rjdj is gone, robotcowboy is coming ...)
Hi, On Sun, Nov 04, 2012 at 05:48:23PM -0800, Jonathan Wilkes wrote: > [list of the table names( > | > | [r midi_note_number] > | / > | [set $1( > | / > [ ( > | > > If the essence of "seeing the light" regarding Pd Vanilla is that it's more > efficient to use what's already there to read/write/share patches, I don't > see why you'd prefer the abstraction to such a straightforward idiom to > solve your task. For m_symbolarray the main reason was speed and as a side-effect allowing "holes" in the array. Accessing an array (even one in a data structure) is a lot faster than sending around a long list every time a lookup is needed. m_symbolarray made a patch run nicely on an iPhone that was totally overloading the device before. Of course often you just can get away with the usual approach that you outlined above, and please do so, if you don't run into problems. But if a) the number of names (i.e. the list length) gets large or b) you have to activate this idiom many, many times, you can hit a wall. And it's quite easy to make a) and b) with sample players if you play polyphonic music with many instruments in it. Here m_symbolarray is one way out. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Licensing issues (was rjdj is gone, robotcowboy is coming ...)
Hi, On Sat, Nov 03, 2012 at 07:48:45PM -0700, Jonathan Wilkes wrote: > That's a bit like having an abstraction to make an array of Pet Rocks. > What do you use it for? Everywhere you need to translate an index number into an arbitrary symbol. For example to translate midi note numbers to table-names in a generic sample player. Ciao -- Frank Barknecht _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Open midi files in PD Vanilla?
On Mon, Aug 13, 2012 at 11:37:17AM -0700, Miller Puckette wrote: > The "seq" object is part of Krzysztof Czaja's "cyclone" library which I > found rather easy to compile last time I tried (on a linux system; not > sure what will happen in IOS). I don't think there are any third-party > library dependencies but I could easily be wrong about that since linux > provides so much stuff and it's easy to use things without knowing you're > using them. > > Another pretty good way would be to use some midi file to text converter > to pre-convert all the MIDI files you want to use; then use "qlist" in > Pd vanilla to sequence them. [seq] can save a midi file in a text format that with some massaging can be made to play directly in a "qlist". The rj library contains an abstraction "c_seqplay" that does the necessary conversions on the fly. rj is availabe at https://github.com/rjdj/rjlib (c_seqplay is pure vanilla) Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] list-abs
On Wed, Jul 11, 2012 at 06:18:46PM +0200, João Pais wrote: > I think this abstraction doesn't load, because it has a conflict with the > folder(library) name. writing [list-abs/list-abs] works out well. > does this happen with other libraries, also with externals or just with > abstractions? never noticed. As far as I remember it is related to some kind of bug in Pd-extended or the [import] external or the libdir format or so, which fail when a libdir contains an abstraction that has the same name as the libdir. For the same reason the sssad abstraction was banned from Pd-extended in the past. Maybe that has changed now. Personally I believe, a library format where you cannot use the same name for an object as the library's name is a flawed format. Anyway as the [list]-abs collection is a collection of abstractions, there is no need to use "-lib" to load it, use "-path" instead. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] running Pd with a timer for an installation?
Hi, On Mon, Jul 09, 2012 at 08:44:11PM +1000, Richie Cyngler wrote: > However if I want to kill Pd first is [realtime] the best object to use for > a scheduled event (in this case quitting Pd) like this? No, [realtime] is just a stopwatch for elapsed time, similar to [timer]. It's not a clock. If you want to quit Pd at a certain time, [date] from the zexy library is fine, or you can use your operating system's scheduling mechanisms to start a little script to quit Pd gracefully via "pdsend" and a [netreceive] in your patch. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [TogEdge] - anything else ?
Hi, On Wed, Jun 20, 2012 at 05:29:49PM +0200, tim vets wrote: > don't know if it matters if the tgl isn't visible, > but i guess you could also use: > [i ]X[== 0] That would be *much* faster than using the [tgl]. You can squeeze a little bit more performance out of it if you use [f ] instead of [i ]. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [pd] tables as patch storage
On Thu, Jun 14, 2012 at 11:29:10PM -0400, Billy Stiltner wrote: > so there are 3 builti ways to do some sort of patch storage - msgbox, > table, and txtfile. 4) "data structures" i.e. the [struct] object and relatives. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] list.element in mtl?
On Sat, May 26, 2012 at 09:45:38AM +0200, Frank Barknecht wrote: > On Wed, May 23, 2012 at 02:34:13PM -0400, Dafydd Hughes wrote: > > Hi folks > > > > I may be wrong here: is mtl meant to replace pdmtl? > > > > If that's the case, am I crazy or is list.element missing? Is there a good > > replacement for it? > > The list.element.pd I have here is just an atom-thin wrapper around [packel > $1], so you could use that instead. If you want to avoid externals, you could > build something with two [list split] objects or message boxes with "set, > adddollar". For negative indices, just substract the index from [list length] Forgot to mention: [list-idx] from list-abs is similar. It has zero-based indexing, so it's one off compared to list.element and doesn't spit out the full list on n=0. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] list.element in mtl?
On Wed, May 23, 2012 at 02:34:13PM -0400, Dafydd Hughes wrote: > Hi folks > > I may be wrong here: is mtl meant to replace pdmtl? > > If that's the case, am I crazy or is list.element missing? Is there a good > replacement for it? The list.element.pd I have here is just an atom-thin wrapper around [packel $1], so you could use that instead. If you want to avoid externals, you could build something with two [list split] objects or message boxes with "set, adddollar". For negative indices, just substract the index from [list length] Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Current PMPD binaries for Win and Mac?
On Thu, May 17, 2012 at 11:36:46AM +0200, Nicolas Montgermont wrote: > Here are the mac bins from august 2011 Wonderful, thanks a lot! Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
[PD] Current PMPD binaries for Win and Mac?
Hello, I am looking for compiled binaries of the latest pmpd for Windows and Mac. I'm interested in the 2011f versions with single-object simulations: [pmpd], [pmpd2d] and [pmp3d] like in [msd], not the old pmpd which is included in Pd-extended 0.43 beta and earlier. Anyone has these and could make them available? Thanks a lot. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] variable receive objects?
Hi Jörn, On Sat, May 12, 2012 at 01:20:45PM +0200, Jörn Nettingsmeier wrote: > is there a way to generate a variable receive object similar to a send > via message box, whose source is defined at load time? Attached is a common idiom that can be used in this kind of situation. It basically works by using one single global send/receive name for everything, thereby reducing the risk of nameclashes. You could pass $0 as argument to both abstraction to make it a bit local or better yet: Use [inlet]s to make it as local as it gets in Pd. Inlets rock! Then each message you pass along gets prefixed by a certain tag (a number "id" in the example) in the sender and routed accordingly at the receive side. This basically moves the actual receive name into the message you send. The example requires Pd 0.43 with settable [route] objects, but it's possible to clone a settable route with [select], check out the sroute.pd example in the [list]-abs collection. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ rs-set.pd Description: application/puredata r-set.pd Description: application/puredata s-set.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] state of memento.
Hi, On Tue, Apr 17, 2012 at 01:08:50PM +, David Schaffer wrote: > I would like to know if the memento state saving system is still supported in > pd-extended under windows XP. I was using 0.42.5 and had to downgrade to > 0.40.3 to be able to recall my presets. In other, more recent versions, the > recall process would crash pd instantly. It is frustrating to have to use old > versions of pd when so many great people work hard on new releases. While I don't know about the state of Pd-extended, crashes when using Memento almost always are related to one of the few externals used, namely [pool] and sometimes [prepend]. I think I have replaced all occurences of [prepend] in all Memento/RRADical patches with an abstraction prepent.pd (sic!), so this should not crash anymore, but check on your system to make sure. Which leaves [pool] as a common reason for crashes. I don't know why it crashes. In my experience, people have been able to solve it with a recompilation of pool and flext for their Pd version. I guess it should be possible to compile for the latest Pd/Pd-X, too, but it's probably something you have to do on your own. I would suggest to base future preset handling on the [sssad] abstraction. It's also usually not shipped by the Pd-extended maintainer (maybe it is in the latest version, I didn't check), but because it's a single Pd vanilla abstraction, it is very easy to use just everywhere. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] hslider/vslider - mismatch of input and output
On Sun, Apr 01, 2012 at 08:14:43AM -0300, Iain Mott wrote: > Hi, I've noticed something strange with hslider and vslider. I you give > them a large range, the inputs and outputs aren't always equal or at > least they are out by a factor greater than 1. For example with the > range 0 - 55000, if you connect a number object to hslider's input and > enter 6034, the output reads 6032.68. > > Couldn't find this reported elsewhere - though perhaps i didn't search > hard enough. This result is on linux. I reported this a loong time ago, in 2006: http://sourceforge.net/tracker/?func=detail&aid=1556206&group_id=55736&atid=478070 It happens, if the slider's range is not divisible by its pixel size. A 100px slider 0...100 is fine, a 100px slider 0 ... 127 is not. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] rtc lib help patch revisions
On Wed, Mar 28, 2012 at 02:46:12PM -0700, Jonathan Wilkes wrote: > Thanks. On that page it says: > Thanks to Frank Barknecht and others, RTC-lib is available for Pd (Pure > Data). Download from khz96.org. Frank? Should I sent the revisions to you to > commit? Yeah, I ported RTC to Pd. You can send me the revised help-patches with meta-inside and I'll commit it. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] list-abs and externals [was: Re: [pd] tables as patch storage]
Hi, On Tue, Mar 27, 2012 at 12:11:10PM -0700, Jonathan Wilkes wrote: > But I find it interesting that you only imagine the guts of list-abs getting > replaced > with externals in order to improve the performance, and not with new core > objects. Oh, but I can imagine it and it has already happened: list-len.pd was counting the output of [list-drip] before [list length] was introduced, which is now the sole object inside of list-len.pd Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [pd] tables as patch storage
On Tue, Mar 27, 2012 at 11:38:13AM -0400, Mathieu Bouchard wrote: > Le 2012-03-27 à 17:37:00, Frank Barknecht a écrit : > > >On Tue, Mar 27, 2012 at 08:04:37AM -0700, Jonathan Wilkes wrote: > >>>From: Mathieu Bouchard > >>>(Of course, there are externals, but they're not the kind of thing used by > >>>the kind of people who come up with list-abs.) > >> > >>I don't know what that means. What does that mean? > > > >Matju is teasing me as maintainer of list-abs as a vanilla-based library, > >deliberatly jumping to the wrong conclusion I would despise externals. > >But I ignored the remark. Or actually now I didn't. > > Well, by calling it « teasing » you're avoiding the point of my > remark, which is essentially ignoring it. I think that you're > deliberately jumping to the wrong conclusions about my mail, too. I have 6 minutes left on my battery and won't leave the warm garden sun to jump to other conclusions. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
[PD] list-abs and externals [was: Re: [pd] tables as patch storage]
On Tue, Mar 27, 2012 at 11:21:15AM -0400, Mathieu Bouchard wrote: > list-abs was designed to only use pd's builtins, no externs, which > makes it more like academic exercises of proving that anything can > be done with a Turing tape machine, rather than being designed in a > pragmatic way. Actually I consider list-abs to be very pragmatic *because* it only uses builtins. This makes it highly portable and trivial to use everywhere, even without installing it globally. If you treat list-abs as an interface or API, it also is very easy to optimize the objects by using externals inside of the list-abs-abstractions without having to change the surrounding patches. I already sketched this approach four years ago: http://lists.puredata.info/pipermail/pd-list/2008-12/066571.html Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [pd] tables as patch storage
On Tue, Mar 27, 2012 at 08:04:37AM -0700, Jonathan Wilkes wrote: > > From: Mathieu Bouchard > > (Of course, there are externals, but they're not the kind of thing used by > > the kind of people who come up with list-abs.) > > I don't know what that means. What does that mean? Matju is teasing me as maintainer of list-abs as a vanilla-based library, deliberatly jumping to the wrong conclusion I would despise externals. But I ignored the remark. Or actually now I didn't. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [pd] tables as patch storage
On Mon, Mar 26, 2012 at 12:20:51PM +0200, Charles Goyard wrote: > Hi, > > Billy Stiltner wrote: > > why havent i seen more usage of tables as patch storage? > > Maybe because you can only store numbers, not strings. > > A textfile seems more versatile. Or a message box. Miller's help-files are crammed full with message boxes used as patch storage. Patch-level storga it nice for toplevel patches, but often not really useful in abstractions, when each abstraction instance needs a different state, although they all share the same patch file. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [PD-announce] Pduino 0.5 maintenance release
On Mon, Mar 19, 2012 at 06:53:11AM -0400, José Luis Santorcuato Tapia wrote: > Hi, is a great new, but also is a sadness that do not continue with the > project, I must say was one of the most relevant contributions to media art > and physical computing. I've been using Roman and Olsen's version for a while now. It's much improved and easier to get running on Pd installations including vanilla-based ones because it avoids relying on the Pd-extended path layout where unneccessary. Hans forgot to mention where to get it: https://github.com/reduzent/pduino Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Re : Re : store and manipulate multiple lists
Hi Benoît, On Sat, Mar 17, 2012 at 01:26:35PM -0700, Benoît Fortier wrote: > I'm still not familiar with data structure and pointers in pd, but I think > I'll use your suggestion as a starting point. Thanks! Learning data structures is a bit confusing at first, but many typical operations repeat again and again in almost the same way. It's like the [f ]x[+ 1] counter: At first it's hard to understand, but later you'll just do it without thinking. Attached is a working sort patch. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ sort-by-first-element-help.pd Description: application/puredata sort-by-first-element.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Re : store and manipulate multiple lists
Hi, On Thu, Mar 15, 2012 at 11:39:51AM +, Andy Farnell wrote: > Yes of course. Once you can sort items of any type you can sort > aggregate items, structs, sublists or whatever on one of their > elements. Its a little messy in Pd. The best way might be to > use pointers and try to do the classic Kernighan and Richie > head swap thing but I have no idea how to exchange pointers in > Pd. Sorting lists of numbers by their first element is pretty easy to do with Pd's data structures/pointers. I don't have Pd at hand now to patch an example (maybe Monday), but basically you first define a data structure with one "float x" field and one with an array of these float-items in addition to its own float x. [pd $0-f]: structure with one float item: [struct $0-f float x] [pd $0-record]: structure with an x-float for sorting and the array "data" to hold all the list items: [struct $0-record float x array data $0-f] Then you create the structured data from the lists and write them to a subpatch as usual with data structures. The first element in an incoming lists doubles as "x" position, the array holds the rest of the list. [r one-list] | [t a a a] || | || [list split 1] || | ... traverse subpatch blabla || [append $0-record x] || | || [s $0-current-pointer] || |[list length] [r $0-current-pointer] || | |[setsize $0-record data] | [list-enumerate] <- list-drip with index numbers, i.e. "list a b" -> "0 a, 1 b" | [swap][r $0-current-pointer] | \ | [element $0-record data] | \ [set $0-f x] Then sorting is just a message "sort" to the subpatch receiver, afterwards dump the lists again using basically the opposite from above. You're only interested in the "data" array now. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] vline~ precision, or sequentially segmented playback of a buffer
Hi, On Tue, Mar 13, 2012 at 08:01:21PM +0100, João Pais wrote: > The offset of [tabread4~] was there to avoid any reading errors when the > index points get too high (the whole sample is almost 7m long). So > there's not option for this, but to use only the right entry? I believe it should be possible to correct the timing issues of the offset inlet with some additional calculations involving [timer] and [bang~] that take into account that this inlet is only updated at block boundaries. It's probably a bit tricky to get right, but I suppose it could work. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] mrpeach routeOSC behaves differently then its previous release?
Hi Roman, On Tue, Mar 13, 2012 at 12:19:59PM +0100, Roman Haefeli wrote: > Though I lack to see the necessity to change [routeOSC]'s current > behaviour, I agree that it most likely wouldn't cause any harm. As I understand it, this topic only came up because apparently the behaviour has been changed in the newest release to not allow list-messages containing OSC-messages as first item anymore, breaking some old patches without any urgent necessity. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] mrpeach routeOSC behaves differently then its previous release?
Hi, On Tue, Mar 13, 2012 at 10:02:01AM +0100, Roman Haefeli wrote: > You're not convinced of what now? Sorry for the unclarity: I'm not convinced of the recent change in [routeOSC], I think, it would work fine accepting list-messages as well as proper OSC-meta-messages. > The proposal is actually what you describe above. Currently it _does_ make a > separation between 'list' selector and 'OSC path' selector (it disregards > messages with 'list' selector). Did you mean to say: 'Yeah, I'm convinced of > the proposal to change [routeOSC]s behaviour to make it also messages with > the 'list' selector'? Yes. > Hans proposed to generally get rid of the separation between 'list' > selector and 'any' selector messages in all parts of Pd. That's what I'm not convinced of: When designing a new language, one may consider a different approach. But I don't see a need to change this system in Pd now, it works fine in general. > undecided whether this is a good idea, but if it would be done, I'd > consider it a bad approach to do it in every (external and internal) > class separately. Rather should Pd's message system be changed. Well, the whole list-/any-/float-/...-messages *are* Pd's message system. It's a very flexible system, that allows differentiating between all kinds of messages. In the end it's up to the author of a patch/external/abstraction to decide which distinctions should be used. Not everything that is allowed has to be done all the time. In the [list]-objects (minus trim) the distinction between "list"-messages and "meta"-messages is not necessary, because lists are all these objects deal with. So it makes sense that these objects treat meta-messages like list-messages. That's very different from for example [pipe s s 1000] which will delay a [list x y( or a [symbol S( for one second, but can still be flushed with a "flush" meta-message. > In this particular case, [routeOSC]'s behaviour is consistent with its > brothers and sisters, since [unpackOSC] also outputs only messages with > an OSC path as selector. So what? [routeOSC] will continue to work fine with what it gets from [unpackOSC], but additionally users constructing their own OSC-messages with [list]-operations could skip the final [list trim]. > Also for the documentation it's much more concise to state 'the selector of > the incoming message is considered the OSC path' than 'the selector of the > incoming messages is considered the OSC path, unless the selector is "list" > where the first element of the message is considered the OSC path'. "The first element in the incoming message is considered the OSC path." :) No mentioning of selectors, list-message, meta-messages needed to document it here, unless one is a language lawyer. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] vline~ precision, or sequentially segmented playback of a buffer
On Mon, Mar 12, 2012 at 11:32:44AM -0400, William Brent wrote: > I'm also wondering about the timing of tabread4~'s offset inlet being > updated. I get fewer clicks by tossing most of the patch into a > subpatch with [block~ 1]. I haven't checked really carefully, but > that does seem to make it so that clicks only occur where there are > gaps in the log.txt file. This also is the reason for the 181 msec clicks I get. Replacing the whole [list-sub] construction with a simple [$1, $2 $3( between [textfile] and [vline~] gives a nice and clean sound, except at the turnaround points where clicks are expected anyway. The offset-index of [tabread4~] is a message inlet that is not timing accurate, [tabread4~] will use the value from here at a different time than [vline~] uses its own copy of the value, leading to clicks. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] mrpeach routeOSC behaves differently then its previous release?
Hi, On Mon, Mar 12, 2012 at 06:36:25PM -0400, Hans-Christoph Steiner wrote: > On 03/12/2012 06:06 PM, yvan volochine wrote: > > On 03/12/2012 02:54 PM, Hans-Christoph Steiner wrote: > >> IMHO, [routeOSC] should accept these two as the same thing: > >> > >> [/bla/1/blabli 0.437( > >> [list /bla/1/blabli 0.437( > >> > >> It'll make life easier for a lot of people, and I can't see any > >> disadvantage in that setup. > > > > well, in pd in general, [list foo bar( is not exactly the same as [foo > > bar(, unless I'm missing something (if so, please, feel free to > > enlighten me ;)). > > > > why not change also the behavior of [route] (and tons of other > > objects) to make life easier for a lot of people ?? > > > > I don't really see the point.. [routeOSC] expects an OSC path, [list > > /foo/bar 666( is obviously not one. > > > > my 20 COP anyway. > > I personally think it would be great to get rid of the separation > between lists and non-list messages (i.e. lists of atoms that start with > a symbol other than "list"). But that's a big project that will break > backwards compatibility. > > Changing specific objects to ignore the difference can be done now > without compatibility concerns. I don't believe that getting rid of the separation in general is a good goal. But I do agree, that ignoring the difference in some objectclasses can be a useful time saver without introducing nasty side-effects. Some examples: In the rj library most objects use the last inlet solely for control messages, i.e. special meta-messages to set the object's state. This inlet starts with a [list trim] as its first operation effectively making list-messages with the parameter name as first element the same as meta-messages where the parameter name is the selector. "list frequency 440" is treated the same as "frequency 440". The only disadvantage here is, that the object's inlet can not react in a special way to real "list"-messages. So what? I designed the objects so I could make sure none of them wants to do that, of if they want to, they can be designed to use a different, often more memorizable selector like "notelist 60 62 64". (This is different from the general case in Pd where many objects actually *do* special things with list-messages, most notably all message boxes). The whole [list] object family except [list trim] (and the [list]-abs collection as well) internally convert everything the other way around, into "list"-messages and they output "list"-messages. This makes manipulating lists much less error-prone. [routeOSC] obviously has worked fine in the past with the same approach, so I don't think, it's of much use to force users to insert their own [list trim] suddenly. It's not like in [route] where [route list] is indeed needed sometimes (or was needed before [list trim] appeared). One could just as well define [routeOSC] as an objectclass that routes pure OSC-messages as well as OSC-messages that are embedded in a "list"-message. Control messages like "verbosity 1" could still be used and the check, if a path is a proper OSC-path would just be applied to the first element of a list-message if necessary. So I'm not convinced. :) Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] vline~ precision, or sequentially segmented playback of a buffer
Hi William, On Mon, Mar 12, 2012 at 11:32:44AM -0400, William Brent wrote: > Another thing is that, even though vline~ can start ramping between > block boundaries, there's still a lower limit involved. You can see > in the attached patch that you can't get a period less than about 88 > samples (or 44 samples for each half of the triangle wave). This actually is a limitation of [metro] which has a lower boundary of 1 millisecond. If you replace it with a metro-clone based on a feedback'd [delay] you can get lower periods. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] tunetof scl2pd.py
Hi, On Sun, Mar 11, 2012 at 07:11:27AM -0400, Billy Stiltner wrote: > No errors with sending the command to shell. > > I did get some errors though with a few runs of it in a terminal here is an > example. > > ValueError: could not convert string to float: > bj@bj-HP-Pavilion-dv5- > Notebook-PC:~/Desktop/tunetof$ python scl2pd.py stiltnerphihr16.scl > Traceback (most recent call last): > File "scl2pd.py", line 69, in > tab = convert_scala(file) > File "scl2pd.py", line 58, in convert_scala > tab.append(ratio2float(l)) > File "scl2pd.py", line 21, in ratio2float > return float(r[0]) / float(r[1]) > ValueError: could not convert string to float: This looks as if there's something strange in stiltnerphihr16.scl, where stiltnerphihr16.scl probably contains a ratio. Make sure, the ratios don't have any spaces, i.e. "2/3" is fine, "3 / 4" is not. > also in tunetof.pd there was an error with nonoctave tunings > here is a correction I think, you this is based on an outdated version of tunetof, the latest one (though already 3 years old) doesn't have expr in it anymore. You can get it here: http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/abstractions/footils/tunetof/ I don't remember anymore if the latest version deals correctly with non-octave tunings, it may not. What exactly did you change here? Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] tunetof scl2pd.py
On Thu, Mar 08, 2012 at 01:10:34AM -0500, Billy Stiltner wrote: > what is the best way to run scl2pd.py from within pd? i forgot where shell > is located. i want an open file dialog then pass the file name to > scl2pd.py. i probably ought to just rewrite in a languagei understand > like java and have the ratios sent to a table through udp that way I can > have a cool scala browser that displays info about the scale before > selecting it to be used since there are over 4000 of them You could use the [shell] external to quickly run the script, or rewrite it to be a Lua external, which shouldn't be hard. But scl2pd.py is intended to be run from the command line. With it, you can convert all the scales that are part of the Scala software with a single command: scl2pd.py *.scl After that, you get one file ending in ".scl.tab" for every scale and don't need to run scl2pd.py again. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [PD-announce] pdlua and tclpd: now embedded in Pd-extended 0.43
On Mon, Feb 27, 2012 at 12:54:23PM +0100, João Pais wrote: > I'm thinking about using lua to build an interpreter for my Click Tracker > (http://code.google.com/p/clicktracker/), so it's great that this is > working. Can you recomend any good lua tutorial? Take the blue PIL! http://www.lua.org/pil/ For starters the online 1st edition is fine, but I still recommend to buy the second edition: The PIL is one of the best books on programming in general in my opinion, and you will probably learn a lot that you can use in other languages as well. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund list sort
On Sat, Feb 25, 2012 at 02:45:38PM -0500, Mathieu Bouchard wrote: > Le 2012-02-25 à 09:34:00, Frank Barknecht a écrit : > >> Yes, exactly. I often use data structures, well, as data structures and >> almost never use them for scores in a UPIC sense. > > What's UPIC ? I was referring to the UPIC composition tool by Iannis Xenakis (Unité Polyagogique Informatique du CEMAMu), that was one of the inspirations for the graphical score capabilities in data structures. See http://en.wikipedia.org/wiki/UPIC Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund list sort
On Sat, Feb 25, 2012 at 09:38:20AM +0100, Frank Barknecht wrote: > Hi, > > On Fri, Feb 24, 2012 at 01:26:54PM -0500, Mathieu Bouchard wrote: > > I have Pd-extended 42.5 that contains Michał Seta's sort, which used to > > be cubic (O(n³)) and with even lower sorting limits, until I made you > > replace the O(n²) [list-drip] that used O(n) stack, by one that runs in > > O(n) and uses O(log n) stack. > > > > I don't know any more recent version of list-abs. > > To me the home of [list]-abs is the CVS repository, Oops, "SVN" of course. At Sourceforge. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund list sort
Hi, On Fri, Feb 24, 2012 at 01:26:54PM -0500, Mathieu Bouchard wrote: > I have Pd-extended 42.5 that contains Michał Seta's sort, which used to > be cubic (O(n³)) and with even lower sorting limits, until I made you > replace the O(n²) [list-drip] that used O(n) stack, by one that runs in > O(n) and uses O(log n) stack. > > I don't know any more recent version of list-abs. To me the home of [list]-abs is the CVS repository, but I'm a bad boy who practically never does proper "releases". Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund list sort
On Fri, Feb 24, 2012 at 10:40:52AM -0800, Jonathan Wilkes wrote: > - Original Message - > > From: Mathieu Bouchard > > To: Miller Puckette > > Cc: pd-list@iem.at > > Sent: Friday, February 24, 2012 1:16 PM > > Subject: Re: [PD] sigmund list sort > > > > Le 2012-02-24 à 09:51:00, Miller Puckette a écrit : > > > >> It's odd, but it never occurred to me that one should be able to > > specify > >> which field(s) to sort on -- it's x, then y. I should fix this... > > > > Nearly all the music I ever composed used a vertical time axis. Lots of > > people > > are in this situation, though perhaps not many are also into Pd DS. > > Data structures can be used for more than drawing a score with a vertical > time > axis. In Frank's case there aren't even any drawing instructions-- the only > reason > he's using x is because that's the field the canvas "sort" method uses. Yes, exactly. I often use data structures, well, as data structures and almost never use them for scores in a UPIC sense. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Resonant filter using cpole~ czero~
On Fri, Feb 24, 2012 at 12:46:13PM -0500, Mathieu Bouchard wrote: > Le 2012-02-24 à 09:07:00, Frank Barknecht a écrit : > >> I made it "half signal-rate": The object accepts signal parameters, but >> these are just linearly interpolated internally, i.e. they don't move >> correctly "on a circle". > > If you interpolate, it means that you are doing something at non-signal > rate. What is it that makes you having to interpolate a signal parameter > that is already at the same rate as the main input ? Ah, sorry - I was completely wrong in my explanation. Now I checked: [e_beequad] linearily interpolates between parameter settings that are set at *message* rate. The original [biquad~] simply jumps to new settings. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund list sort
Hi, attached is an approach using data structures to do the sorting of peaks. Somehow I forgot how to set the sort field in a data structure and cannot find it in the docs. Wasn't there some way to specify a different field than "x" for sorting? (Maybe it was simply "sort " which I didn't try in my quick patch.) Ciao -- Frank On Sat, Feb 18, 2012 at 09:58:50AM -0800, Miller Puckette wrote: > I believe there's no good way to do this in pd vanilla. THere should be > a 'list sort' but I haven't figured out what would be the best design. > (and there's probably already a list sort in Pd extended :) > > cheers > Miller > On Sat, Feb 18, 2012 at 04:19:58PM +0100, labyrinthuscochlearis wrote: > > hi all, > > > > what would be a good way to transform sigmund~'s peaks output so that I > > get a list with peak amplitudes but in the ascending order of the > > corresponding frequencies? > > > > thanks, > > christian > > > > > > ___ > > 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 -- Frank BarknechtDo You RjDj.me? _ __footils.org__ peak-sort.pd Description: application/puredata set-peak.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [PD-announce] Japanese Pure Data book is out now.
Hi, wonderful! I really like the cover, too. I just found that BNN International also has an Englisch announcement here: http://bnn-international.blogspot.com/2012/02/this-is-basic-how-to-book-about-pure.html All the best, -- Frank On Mon, Feb 20, 2012 at 05:38:00PM +0900, Seiichiro MATSUMURA wrote: > Dear list, > > The world first Japanese Pure Data book for sound programming will be > published from BNN(Bug News Network) Inc. on 23rd Feb. 2012 in Japan. > The title is "Pd Recipe Book -Sound Programming with Pure Data". This > book is written for the programming newbies with the step by step type > tutorials. > If you know anybody who can read Japanese and hope to jump into the Pd > world, please recommend this book. > > Web site (Japanese) > "Pd Recipe Book -Sound Programming with Pure Data" > http://www.bnn.co.jp/books/title_index/web/pd_recipe_book_pure_data.html#more > > I hope this become the starting point to spread Pd in Japan. > > best wishes, > > Sei Matsumura > > -- > __/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/ > Seiichiro Matsumura, Ph.D. > > Tokyo University of Technology > School of Design > Associate Professor > > http://low-tech-ism.com/ > __/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/ > > _______ > Pd-announce mailing list > pd-annou...@iem.at > http://lists.puredata.info/listinfo/pd-announce > -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Resonant filter using cpole~ czero~
On Sun, Feb 19, 2012 at 11:33:28AM -0500, Mathieu Bouchard wrote: > Le 2012-02-03 à 09:46:00, Frank Barknecht a écrit : > >> Most filters in the rj library (https://github.com/rjdj/rjlib) use a >> similar approach. They even include a biquad-clone written with >> elementary filters. > > Why would you clone biquad using elementary filters ? Is it just to show > that it's possible, or is it to make it fully signal-rate ? I made it "half signal-rate": The object accepts signal parameters, but these are just linearly interpolated internally, i.e. they don't move correctly "on a circle". Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund list sort
On Sat, Feb 18, 2012 at 01:14:22PM -0500, Mathieu Bouchard wrote: > Le 2012-02-18 à 09:58:00, Miller Puckette a écrit : > >> I believe there's no good way to do this in pd vanilla. THere should >> be a 'list sort' but I haven't figured out what would be the best >> design. (and there's probably already a list sort in Pd extended :) > > the [list-sort] abstraction uses a high-constant O(n²) algorithm that > breaks once you try to sort more than 125 values. Actually [list-sort] since quite some time uses the "sort" method borrowed from Pd's data-structures for sorting. The problem here is not so much the sorting algorithm, which is very fast and can sort way more than 125 items. However copying the list to a data structure and back - this currently indeed has a problem with stack-overflows, as I'm now aware. Have to think about a fix ... Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] two arguments for udpsend OSC message?
On Mon, Feb 13, 2012 at 04:03:20PM +0100, Christoph Kuhr wrote: > Hi list, > > i want to pass a second argument to the message: send /foo/bar $1 $2 > > but pd complains: error: $2: argument nuber out of range > > how can i achieve this? The error you got means that you passed a message that was to short to the message box - it only had one item. So to fix it send a list with two items. :) Also make sure that you're sending a real "list"-message, see http://en.flossmanuals.net/pure-data/ch038_lists/ If in doubt, add a [list] object in front of your message box to convert to a list-message. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sdtout converts symbol with space to list
On Tue, Feb 07, 2012 at 11:24:13AM -0500, Mathieu Bouchard wrote: > Le 2012-02-07 à 17:08:00, Cyrille Henry a écrit : > >> pd did not have any escape character to deal with space. >> this is a generic problem more than a bug. > > The parser knows how to parse backslash space to mean a space within a > symbol, but the printer doesn't handle it. [stdout] does handle spaces in symbols, but not in combination with the [t a] in front of it, only when it receives the spaced-out symbol directly. I guess there is something shady with [stdout]'s anything-method going on. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Equal-power crossfade?
On Mon, Feb 06, 2012 at 10:15:51AM -0800, Jaime Oliver wrote: > > Your example is a bit broken (there is no panning going on at all), > > you're right. ... coffee excuse ... > here is a fixed version in case someone is interested. > > the subject of the e-mail however, does not ask to "pan", but to > "crossfade" without loosing or adding power. Yeah, I confused that right from the start ... missing-coffee-excuse ... > What the example shows is a "linear crossfade" where the RMS remains > constant during the crossfade. This has its roots indeed in the use of fading identical signal(s). If you use different input sounds, the CP-fade gives nicer results. Attached is an example that uses the linear/cp crossfades from the rj-library as subpatches and fades two different signals and then the same signal twice. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ crossfade-compare.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Equal-power crossfade?
On Mon, Feb 06, 2012 at 09:29:33AM -0500, Jaime Oliver wrote: > Here's an argument for plain linear crossfade. > I get power "boosts" with cosine crossfades... Your example is a bit broken (there is no panning going on at all), but I get the same result with a the fixed version or with [e_pan] in the rj library when adding left and right signal together and taking the RMS. The "boost in the center" is to be expected: In the center with CP-panning, left and right channels both are multiplied by about 0.707 instead of 0.5 with a linear pan, so adding them together will make the center louder. Perception-wise this results in the signal appearing nearer to you than with linear panning, which is the reason this is used: With CP-panning the signal will appear to move around you in a constant circle whereas with linear panning it will move farther away from you as it gets to the center, it will move as if on an oval. Avoiding this kind of movement is the motivation for CP-panning. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Equal-power crossfade?
On Mon, Feb 06, 2012 at 02:42:01PM +0100, Frank Barknecht wrote: > Hi, > > On Mon, Feb 06, 2012 at 02:22:34PM +0100, Pierre Massat wrote: > > I need a simple equal-power crossfade between two signals. I asked the same > > question a few years ago, but i just can't remember how to do it... > > This is used in rj's e_pan.pd: > > left = cos(p) * signal > right = sin(p) * signal > > where p is in radians from 0 to PI/2 (i.e. multiply your 0...1 panning by > 1.5708...) Oh, well, actually you were looking for crossfade, not panning. It's basically the same idea, though. In the rj library you could use [c_cpxfade]. The helpfile for this compares it with the linear [c_xfade] which has the "hole in the middle". Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Analog square wave?
On Mon, Feb 06, 2012 at 09:43:29AM -0500, chris clepper wrote: > In an analog synth the square wave has some distortion to it: the rise is > not instantaneous and there is some overshoot of the peak too. Over the > years this was minimized by using high slew rate amp circuits and the like > so an old Moog pulse wave is less ideal in shape than a new one. > > For a digital square wave you would want to use band limiting to avoid > alias artifacts which are quite severe for a square or sawtooth wave. As > the frequency goes higher both of those waves will begin to look more like > sine waves as the partials are filtered out. Pretty much every commercial > digital synth and plugin uses anti-aliased waveforms. However when using this as a LOW frequency oscillator, I would simply ignore the literature on bandlimiting and go with a pure digital aliased wave full force! :) Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Equal-power crossfade?
Hi, On Mon, Feb 06, 2012 at 02:22:34PM +0100, Pierre Massat wrote: > I need a simple equal-power crossfade between two signals. I asked the same > question a few years ago, but i just can't remember how to do it... This is used in rj's e_pan.pd: left = cos(p) * signal right = sin(p) * signal where p is in radians from 0 to PI/2 (i.e. multiply your 0...1 panning by 1.5708...) Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Resonant filter using cpole~ czero~
On Thu, Feb 02, 2012 at 03:32:00AM +, Ed Kelly wrote: > Here is my first attempt at making a resonant lowpass filter using cpole~ and > czero~ objects. It's the first version I've made which actually sounds > halfway towards what I want to achieve, which is a decent diode-ladder or > transistor-ladder filter emulation. I want to make this using only vanilla > objects, particularly rpole~, cpole~ etc. so that they can be ultra-portable > and signal-controlled. Also, > http://www.timstinchcombe.co.uk/index.php?pge=poles#diode > > > Does anyone else have any ideas, or patches we can share? Most filters in the rj library (https://github.com/rjdj/rjlib) use a similar approach. They even include a biquad-clone written with elementary filters. Some are modelled after the classic reson-filters used since CSound times. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] precision of vline~ and/or pd messaging
Hi, On Wed, Jan 25, 2012 at 10:38:06AM +0100, João Pais wrote: >>> and here a link to a thread with iohannes and lyon: >>> http://markmail.org/message/7usetdchjlqyk3eu#query:+page:1+mid:7usetdchjlqyk3eu+state:results >> >> Actually it's Frank and Eric. :) The thread still sums up what's important >> here: It's not necessary to use Eric's objects in Pd. They may be useful in >> Max/MSP and they provide some nice functionality besides accuracy, but the >> accuracy you get with vline~ and Pd's clock objects (metro, delay, etc.) >> already is subsample-exact, so it's fine for many cases and as good as what >> you get with [samm~] and relatives. Just use [metro]. > > oops. > > so, your wording in the final sentence should be something like "so it's > fine for many cases and MORE PRECISE as what you > get with [samm~] and relatives. Just use [metro]"? I don't think, it's "more precise", I think, Eric's objects are just an alternative approach to get the same precision as you get with vline~. IIRC Eric wasn't aware of vline~ when he wrote his objects. > just to ask beforehand: between the bang starting the event and vline~ > there are a couple of patches: getting the counter nr, segment > references, quantisation etc, all in message level (with vanilla and > extra objects). But if the initial bang is "block-precise" (wherever in > the audio block it should be), all message objects should behave fine? > > which are "Pd's clock objects" you described above, all objects in the > "time" section of pd-van? Yes, but of course people can write externals that use Pd's internal clock just as metro, delay or pipe do. Contrasting these you may have a non-clock message, for example if you click a [bang( message. This will actually not be activated at the exact time that you click it, but always on a block boundary. > will also pd-ext objects behave in the same > way, provided that it's not their function to include more delays? > I'll rephrase the question, if between bang and vline~ I put an external > doing a multiplication or something, will it delay the message? (I guess > the answer is no, but want to be sure) The usual message transformation objects don't change the timing of the original message. Pd is deterministic, so you can assume that all the message calculations etc. that you do happen "at the same time". Timing problems occur only when you leave or enter this message realm, for example when converting messages to (and from) audio signals, because audio signals in Pd are block based. The gory details are in Miller's TTEM-book: http://crca.ucsd.edu/~msp/techniques/latest/book-html/node40.html Especially note the subchapters: "Control streams" http://crca.ucsd.edu/~msp/techniques/latest/book-html/node43.html and "Converting controls to signals" http://crca.ucsd.edu/~msp/techniques/latest/book-html/node52.html and help patch: C04.control.to.signal.pd Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] precision of vline~ and/or pd messaging
On Wed, Jan 25, 2012 at 09:56:11AM +0100, João Pais wrote: >> Ah, and I see in addition to your message you wrote vline~ in the >> title! Oops. >> >> I don't know what click2bang~ does-- is it aligning its bangs to block >> boundaries? That's just a guess. > > better to leave it to the author to describe it > (http://www.somasa.qub.ac.uk/~elyon/LyonSoftware/Pd/): > > samm~ sample accurate multiple metronomes, with click signal articulation > click2bang~ Convert click trigger to a bang > > according to the author, putting these 2 objects in a row gives a very > precise metro. > > > and here a link to a thread with iohannes and lyon: > http://markmail.org/message/7usetdchjlqyk3eu#query:+page:1+mid:7usetdchjlqyk3eu+state:results Actually it's Frank and Eric. :) The thread still sums up what's important here: It's not necessary to use Eric's objects in Pd. They may be useful in Max/MSP and they provide some nice functionality besides accuracy, but the accuracy you get with vline~ and Pd's clock objects (metro, delay, etc.) already is subsample-exact, so it's fine for many cases and as good as what you get with [samm~] and relatives. Just use [metro]. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] my phase vocoder example implemented in polar form
On Tue, Jan 10, 2012 at 05:35:50AM -0200, Alexandre Torres Porres wrote: > by the way, I figured out a simple way of having an actual accurate loop > inside [expr] in a similar fashion. > > something like > > expr if ($f1 >= end_$0, $f1 - end_$0, if ($f1 < 0, end_$0 + $f1, $f1)) > > and the after the [line~] object I also take take care of it > > expr~ if ($v1 >= end_$0, $v1 - end_$0, $v1) > > as for the back window, the above output is subtracted a hop size, and I do > this expr~ if ($v1 < 0, $v1 + end_$0, $v1) so it doesnt get negative. > > Sounds fine, perfect looping, thanks to [expr] Isn't this actually very similar to the simpler and faster [wrap~] (see attachment)? [wrap~] is different in that it will also wrap around for values larger than twice the loop size and it will wrap around in negavite areas as well, but I think, that's what you want anyway. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ wrapper.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
[PD] [PD-announce] 7. November 2011: "Patchbay" in Cologne
English below | V Liebe Freunde, am nächsten Montag, 7.11.2011, findet nach einer ausgedehnten Sommerpause unser nächstes Patchbay-Treffen statt. Special Guest: Chikashi Miyama. Wir starten um 19:00 im Klanglabor der KHM, Filzengraben 8, Köln. Ihr seid herzlich eingeladen. Für unser Treffen am 7.11.2011 haben wir diesmal einen besonderen Gast. Chikashi Miyama aus Japan, derzeit am ZKM in Karlsruhe, wird seine Komposition "Black Vox" spiele. Dabei kommt sein selbst entwickelter "Peacock"-Controller zum Einsatz, eine einzigartige schwarze Kiste mit 35 Infrarot-Abstandssensoren, die berührungsfrei mit den Händen gespielt wird. Ein Theremin auf Dopamin! Im Anschluss erklärt er die Technik hinter dem Gerät und erlaubt uns vielleicht sogar einen Blick auf die nackten Schaltkreise, jawoll! Video hier: http://chikashi.net/detail?id=20&lang=e Die Kölner Patchbay ist ein zwangloses Treffen für alle, die sich mit stöpselbaren Medien befassen. Ob ihr euch für Patch-Software wie Pure Data, Max oder SuperCollider interessiert, echte Patchkabel in Modularsynths stopft elektronische Steckplatinen mit Arduinos befüllt oder Circuit Bending macht - hier seid ihr richtig und findet Gleichgesinnte. Es gibt Getränke. Beste Grüße, -- Die Leute aus der Stöpselbucht: Dirk, Frank, Tobias, Tobias, Volker uvm. Dear Friends, we're happy to invite you to the next Patchbay meeting in Cologne on Nov 7, 2011, 7 pm, in the Klanglabor ("Soundlab") of the KHM (Academy of Media Arts Cologne), Filzengraben 8, Cologne. This time we will have a special guest: Chikashi Miyama. Chikashi Miyama from Japan, currently researcher at ZKM Karlsruhe, will perform his composition "Black Vox". It uses a special controller, Chikashi developed: the "Peacock", a box-shaped sensor-based interface, which detects the movements of a performer's hands employing thirty-five infrared sensors. Subsequent to the performance he will explain some technical details of his work and the controller. The "Patchbay" in Cologne is a casual, informal meeting for everyone interested in patchable media. It was started in the beginning of 2011 by a handful of Cologne sound and media artists, some of them are using software like Pure Data, Max/MSP or Supercollider, others prefer hardware modular synths, still others have a circuit bending background or develop custom instruments around microcontrollers like the Arduino board. Whatever patching environment you're interested in, the Patchbay meetings offer an opportunity to see and discuss your and other's projects and just hang around. There will be drinks! Best regards -- The Patchbay People: Dirk, Frank, Tobias, Tobias, Volker and others ___ Pd-announce mailing list pd-annou...@iem.at http://lists.puredata.info/listinfo/pd-announce ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] sigmund~
Hi, On Thu, Sep 29, 2011 at 06:35:51PM -0700, Benoît Fortier wrote: > I'm using the sigmund~ object to get amplitude and pitch information > for the loudest peaks of a signal (see the sinusoid-tracking help > patch, which can be found in the sigmund~ help patch). Out of that > information, I want to create, let's say, 5 midi notes corresponding > to the 5 loudest peaks of the signal. How would you transform the peak > amplitude outputs of sigmund, which are linear, into midi velocities > in order to make those 5 notes sound with the same relative amplitude > that they have in the analysed signal? > > It might be a stupid question but what are those linear peak amplitude > values exactly? Do they have any unit? They don't have a "unit", they specify the actual peak amplitude of a sine component in a signal. If you feed a sigmund~ with an unscaled [osc~] the peak reported should be close to 1, as the sinewave coming out of an [osc~] goes from -1 to 1, so the absolute peak is 1. If you attenuate this [osc~] by multiplying it by 0.5, sigmund~ should report a peak near 0.5 accordingly. The amplitude is "linear" in that it directly outputs this multiplication factor - multiplication by constants ("homogeneity of degree 1") and addition ("additivity") are the two "linear" operations here. See e.g. http://en.wikipedia.org/wiki/Linear_map for some gory details. There also are non-linear operations possible. For example multiplication of a signal with itself is a first step into the non-linear world. You may remember the parabolic curve if you plot f(x)=x*x which looks like a glass of wine and obviously is not a straight line(ar) anymore. dB-curves are similarily skewed, as are square root, log, or other [pow] curves. Now it's possible to express the amplitude of signals in various ways. The peak amplitude above actually already is a modification in that it only considers the absolute value of the actual amplitude (which is negative sometimes in the case of an [osc~], but not for a [phasor~]!). You could also look at the instantaneous amplitude of a signal with [snapshot~] for example, or calculate some kind of average, or use the absolute peak-to-peak-amplitude (which would be 2 for an [osc~]!) A very important amplitude specification is the RMS or root-mean-square amplitude. This is especially interesting as a signal's power is proportional to the square of RMS. RMS in Pd is calulated by the [env~] object. Now in music you very often are interested in powers, intensities or loudness (more complicated) values, for example you want something to be twice as loud as another sound. That's where logarithms and decibels come in. Check e.g. this http://hep.physics.indiana.edu/~rickv/Loudness_Scales.html for some details. In Pd an important thing to know is its non-standard use of the term dB: For example [env~] outputs values in "dB" which are scaled so that a [sig~ 1] will have an RMS of 100, and [sig~ 0] has RMS of 0. But to convert these into linear amplitude multipliers from 0 to 1 you cannot just divide by 100, as your intermediate values would be wrong: [sig~ 0.5] gives an [env~] of about 93.97 and not 0.5 as might be expected! Instead use [dbtorms] here, and [rmstodb] for the undo-operation. The attached file shows these operations in action. More reading stuff: http://en.wikipedia.org/wiki/Amplitude http://www.iu.edu/~emusic/acoustics/amplitude.htm Ciao -- Frank dB-and-more.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Output numbers consecutively, one at a time in PD
On Mon, Sep 12, 2011 at 11:39:11PM +0200, Patrice Colet wrote: > hi, > > - "Sebastian Valenzuela" a écrit : > > > Thank you for the responses, Andy and Jonathan. But I am looking for > > something that will output THE FIRST number whenever I hit "bang"... > > then the NEXT number when i hit bang a second time (and so on). So > > there is no steady, timed rate (as with the list sequencers) of > > number > > output, and I don't want to output all my numbers out right away (as > > with the list-drip object). > > > > then there is [footils/list-dripslow] for that While this would indeed work, I think, Matju's suggestion of a table driven by a [f]X[+ 1] counter, maybe with [mod ] in between would be a better approach, for example because you can easily change the store values on the fly - and of course it's more efficient. If you need to do this with symbols, the [m_symbolarray] from the rj library can be used to index symbols by positions. If you have mixed lists of numbers and symbols I'd probably indeed use [list-dripslow], or maybe just this: [list append 1 2 3 a b c] | | [0\ <- change with a counter, then bang the [list] | | | [set, adddollar $1( |/ [$1( Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
[PD] "Chord" by me
Hi, "Chord" is a drone metal piece I wrote for the Cologne Music Night 2011, where it was performed in a very nice location, the Kunststation St. Peter, an old romanic church from around 1500. So far I don't have a recording of the performance, so here you get one of the final rehearsals I did with the piece on the day before the concert. http://footils.org/2011/09/11/chord/ The concert was recorded as well by the local radio station WDR and may be played tonight on WDR3 on 9/11/2011 somewhen between 20pm and 2am. http://www.wdr3.de/konzert/details/artikel/koelner-musiknacht-2011.html Streams: http://www.wdr.de/wdrlive/wdrplayer/wdr3player.html Best, -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] (breaking symbols) was Re: find a list of numbers in a text file
On Fri, Sep 09, 2011 at 12:07:20PM -0400, Hans-Christoph Steiner wrote: > And indeed, if I was only going on what the manual said, it would be a > very weak argument. Mostly, I'm going on how the type system works. > You can directly interface the automatic typing of atoms by adding > arguments in an object or message box. No. You can only indirectly interface the automatic typing via arguments, because the editor conversions ("numbers" -> A_FLOAT) interfere here. > It is not currently possible to generate a "456" symbol by typing something > into a message or object box. Editor conversions again. To see how the "type system" works, you should go to the source code where you will discover that it allows "symbols that look like a number", because the data-carrying part of a symbol is a char*. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] (breaking symbols) was Re: find a list of numbers in a text file
Hi, On Wed, Sep 07, 2011 at 02:13:01PM -0400, Hans-Christoph Steiner wrote: > About hex 0x form, that could conceivably fall under the "anything > that looks like a number is a float", as least for programmers. I really disagree with your assumption, that in Pd, "anything that looks like a number is a float". This is simlpy not how Pd works or is programmed, it's not in the manual [1] and [makefilename %d] proves the opposite is true: Some symbols can indeed look a lot like numbers. I think, your wrong premise leads to wrong conclusions and should be reconsidered. [1] Here are some occurrences of you premise: - "Anything that is not a valid number os considered a symbol." appears in "2.1.2. object boxes" and talks about object boxes. "2.3.1. anatomy of a message" "The selector is a symbol, which appears in the patch as a non-numeric string with no white space, semicolons, or commas". Note the "appears in a patch", which again hints at the well-known "feature" of the editor to convert things that look like numbers to floats. Same chapter: "It is possible to type messages which start with a number, which cannot be used as a selector." Note the "type". Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] (breaking symbols) was Re: find a list of numbers in a text file
Hi, On Tue, Sep 06, 2011 at 09:30:25AM -0700, Jonathan Wilkes wrote: > > From: fbar > > I used [makefilename %d] a lot in the rj library's [m_chorddict] > > dictionary for chords, where some chord names are proper symbols, like > > "m7", while others are floats like 7. The float-names get converted to > > symbols internally to look up chord notes in a data structure array > > keyed by symbols only (using [m_symbolarray]). > > At what point are you using numerical-symbol selectors? Everything you've > described has the selector 'symbol'. With "numerical symbol" I meant a proper symbol/t_symbol, that "looks like a number", but of course it's a t_symbol. It's the thing that comes out of [makefilename %d] if you send it e.g. "123". So I'm converting floats to symbols, which I think is not what you proposed. Anyway I checked, and in m_chorddict I didn't exactly use it like I described (memory was playing tricks on me), so it's not a good example. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] (breaking symbols) was Re: find a list of numbers in a text file
On Mon, Sep 05, 2011 at 11:41:53PM -0700, Jonathan Wilkes wrote: > I think my proposal of having Pd automagically make floats out of > selectors that look like numbers solves half of the problem, as well as > being consistent with what's written in the last paragraph of 2.3.1. The > other half is already solved by [makefilename %d], and could be made > more consistent by having message boxes automagically convert $1 > in "symbol 15" to a symbol-atom. Possibly the same for the arg > to [symbol]. While I tend to agree and think this sounds sensible, it could clash with this part of the manual (first paragraph of 2.3.1) that hints at problems with numerical symbols as selectors: "Messages contain a selector followed by any number of arguments. The selector is a symbol, which appears in the patch as a non-numeric string with no white space, semicolons, or commas." I'm not sure what "appears in the patch" should mean. It definitly means that numercial-symbol selectors don't get shown and cannot be written into a patch, so you cannot use them in the editor where "real" selectors should be written, like in [route]: There's no [route "15"] in Pd, where "15" should mean a numerical symbol. And if you allow [s 15], should [table 15] also be allowed? And would 15 be a symbol or a float then? It seems to be fine if [symbol 15( would act like [15(->[makefilename %d], but who really needs the former when you already have the latter? And what about symbols with whitespace, like [symbol My Documents/Drum Loop.wav]? Additionally numbers inside messages or object boxes have so many special meanings in Pd (i.e. they turn "1 two three" into a list message, they change the mode of [select] or [route], they make [15] be [f 15] etc.), that it seems to me that some small changes here could open a Pandora's Box and the sole reason for this IMO is legalistic pedantry. Numbers maybe already are overloaded with automagic. However I would like to see some proper quoting mechanism in the editor. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] (breaking symbols) was Re: find a list of numbers in a text file
Hi, On Mon, Sep 05, 2011 at 02:34:30PM -0400, Hans-Christoph Steiner wrote: > > On Sep 5, 2011, at 2:06 PM, Frank Barknecht wrote: > >Here this sentence is true, but you know that not every data entity in > >Pd can be used in object boxes as name or argument, while most things > >that looks like a number will become one here. > > I agree that the implementation does not match the descriptions in > the manual. We do not agree, because what I tried to say is that the implementation *does* match the description! :) In the Pd editor, i.e. in objects boxes, message boxes etc., certain things that look like a number will be converted to a number. ("+1" won't). > That's what is in important here. Yes, its possible to > generate any kind of symbols using certain techniques, but it is not > possible to generate any kind of symbol using any kind of symbol > generation. It is not possible to generate any kind of numercial symbol using the editor, and that's what the manual says. It's possible to generate "t_symbol"s using other techniques, if you need them, for example to get the string ".123" without it becoming "0.123". But this is nothing unusual, it's the same for pointers, gemlists, pdp-packets, probably GF grids etc.: You cannot "edit" these into a message box, but there are many objects that still will accept and create them. > Things that expect symbols would interpret the message from > [makefilename %d] as a symbol, and things that expect floats would > interpret the message from [makefilename %d] as a float. So the > kind of thing I'm talking about would be like this: > > [makefilename %d] > | > [float] > > Then having the patch rely on the "error: float: no method for > 'symbol'" error that is normally generated in that case. Well, it prints an error because there *is* an error in the patch. The author should never have converted a float to a symbol and expect to still do float calculations with it. Here are two similar errors: [symbol three( | [+ four] Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] (breaking symbols) was Re: find a list of numbers in a text file
On Mon, Sep 05, 2011 at 01:36:34PM -0400, Hans-Christoph Steiner wrote: > > On Sep 5, 2011, at 1:11 PM, Mathieu Bouchard wrote: > > >On Sun, 4 Sep 2011, Hans-Christoph Steiner wrote: > >>So in the sense of Pd, anything that can be intepreted as a > >>number should be. This discussion is s 2005 ... Anyway, a symbol, even if it consists only of digits, will not be interpreted as a number in Pd: a symbol is a symbol, a float is a float. Note that the sentence that you quote sometimes and which sounds similar to the statement above ("Anything that is not a valid number os [sic!] considered a symbol." from http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s3.1) is talking about the content of [object boxes] (or more generally: about the Pd editor). Here this sentence is true, but you know that not every data entity in Pd can be used in object boxes as name or argument, while most things that looks like a number will become one here. > >> But that's in conflict with having symbols > >>that have things that can be intepreted as a number. So make Pd > >>consistent, either it needs to be illegal to have symbols that > >>can be interpreted as a number, > > > >This could break some existing patches. > > Do you have an examples? That would be very helpful. Off the top > of my head, it seems that it would only break patches that rely on > errors, which is not a very common situation. What errors would patches rely on that use [makefilename %d] to generate a symbol? Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Appending two signals together to create a third
On Wed, Aug 31, 2011 at 11:51:34PM -1000, Rick T wrote: > I have two signals Signal B and Signal C that I would like to append, which > would create a joined signal called Signal D. I can create Signal B and > Signal C but the questions I have is: > > I created a image that may help explain it better > http://dl.dropbox.com/u/6576402/questions/flowchart_joined2.jpg > > 1) How do I append one signal onto the end of another. (see image labelled > 2) > 2) How can I vary Signal D's Frequency, Amplitude, and Phase? (See image > labelled 3) Attached are two example approaches to this problem. Both involve a phasor signal that is split into two phasors which are out of phase by half a period using [-~ 0.5] and [wrap~]. You can use these two phasors to alternately play two tables with tabread~, if your source signals are in tables, see combine-tables.pd If your source signals are not in tables, combine-signals.pd shows a crude switching between two signals using square waves out of phase with each other. You make these square waves from a phasor wrapped out of phase with itself just like above. (Of course you can also just use one square wave which you multiply by -1 and shift up by [+~ 1] after creation.) Ciao -- Frank combine-signals.pd Description: application/puredata combine-tables.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
[PD] [PD-announce] Tonight: pd~conv at German radio
Tonight the German radio station "Deutschlandfunk" will have a little piece about the pd~convention in Weimar (in German!). It's part of the "Musikjournal" that starts at 20:10 German time (CEST i.e. UTC+2). Streams are available in various formats, see: http://www.dradio.de/wir/hilfe/605738/ -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-announce mailing list pd-annou...@iem.at http://lists.puredata.info/listinfo/pd-announce ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [PD-announce] Pd Convention - Data structures workshop: Taking your requests
Hi, On Tue, Aug 02, 2011 at 01:57:32PM -0700, Jonathan Wilkes wrote: > How well do these things scale without having a low level way to delete/copy > scalars or insert/remove arbitrary array elements? It's "okayish". To store the symbol, I use a data-structure array of number/symbol pairs, where the number is used as a flag if a symbol is active or "deleted". So your symbolarray can have "holes", but OTOH if you create an array with only one symbol stored at position 20,000 it will use up the memory of 20,000 symbol/number pairs. But so does a [table] ... Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] find a list of numbers in a text file
Hi, On Tue, Aug 02, 2011 at 11:51:17PM -0300, Alexandre Torres Porres wrote: > Back in the end of my masters, I did make something that allows you to load > scales from the Scala software into Pd, which has a database of over 4000 > scales. > > Check the software and data bank here http://www.huygens-fokker.org/scala/ > > It's an extremely powerful tool for microtonality, but you may not care for > that and just want to use the scale data bank in Pd. > > Anyway, I have a way that exports the from the Scala software into a text > file that opens in this specific subpatch of mine. My [tunetof] abstraction from 2006 uses a python script to convert Scala files to a format, Pd can easily import to a [table] See http://lists.puredata.info/pipermail/pd-list/2006-04/037184.html ff. It's in the Pd repository at /abstractions/footils/tunetof Maybe you can make use of the Python parser? Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pitch Shift
On Mon, Aug 01, 2011 at 09:20:43PM -0700, Eduardo Patricio wrote: > what about e_pitchshift (from RjDj)? That's the G09 example patch transformed to an abstraction. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] [PD-announce] Pd Convention - Data structures workshop: Taking your requests
On Mon, Aug 01, 2011 at 08:59:49AM -0500, Charles Henry wrote: > I'm mainly interested in using Pd for scientific and engineering > research. I have a mixed level of experience--I'm deep into the DSP > routines, but I have no clue how data structures work. > > About the only application I can think of right now is a "data > logger"--recording info about a particular trial/experiment and its > results. > > I'd like to learn easy or more compact ways to accomplish things with > data structures. > > I will look forward to your workshop! Thanks much! Data structures can be nice problem solvers in unexpected areas as well, not only in visualizing/graphically editing data. For example, they are used hidden away to implement a fast vanilla list sorting in the newest [list-sort], or in the [m_symbolarray] object of the rj library to mimick a [table] object that stores indexed symbols instead of floats. A users of these objects never sees the data structures inside, they don't even have a graphical representation but instead are just used as what their name says: as data structures. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] number stream in ascending order
On Sun, Jul 31, 2011 at 10:12:22PM +0100, Marco Donnarumma wrote: > thanks guys, I ended up using [Bucket] > is there another similar object? > > M > > > [t f f] > | \ > |[Bucket 2] > | | / > | [-] > | | > | [> 0] > | | > [spigot] That's the same as the idiom João showed before, except that it requires users to install an external object. I'd recommend to use João's version, maybe extended like this: [t f f f] |\/ |/\ | [- ] | | | [> 0] |\ [spigot] | Cião, -- Frank > 2011/7/31 Lazzaro Nicolò Ciccolella > > > Il 31/07/11 02.46, João Pais ha scritto: > > > > I usually use something like > >> > >> [t f f] > >> \ / > >> \/ > >> /\ > >> [- ] > >> > >> , maybe resetting the [-] to 0 when the machine starts > >> > >> hi, > > If you want to put a toggle->spigot at the end of the flow is perhaps > > better to use the 'greater than' instead of '-' so you get the values 0 and > > 1 > > > > t f f] > > \ / > > \/ > > /\ > > [> ] > > | > > [x] > > __ > > Lazzaro > > > > > > oh yes, thanks Jaime... > >>> obvious, > >>> > >>> I think I need more coffee today... :) > >>> > >>> M > >>> > >>> > >>> > >>> On Sat, Jul 30, 2011 at 12:54 PM, Jaime Oliver > >>> **wrote: > >>> > >>> just subtract the previous value from the current and if it is > >>>> positive it is in ascending order ?? > >>>> you could even smooth for slight irregularities. > >>>> > >>>> Is this what you're talking about? > >>>> > >>>> J > >>>> > >>>> On Sat, Jul 30, 2011 at 7:46 AM, Marco Donnarumma > >>>> wrote: > >>>> > Hi folks, > >>>> > I have a stream of floats between 0 and 1. > >>>> > The stream goes in a linear fashion back and forth, but I want Pd to > >>>> > understand when the stream is in ascending order. > >>>> > > >>>> > Ideas? > >>>> > Hope this is clear enough :) > >>>> > searching the archive didn't bring up anything useful so far. > >>>> > thanks, > >>>> > M > >>>> > > >>>> > > >>>> > > >>>> > -- > >>>> > Marco Donnarumma > >>>> > Independent New Media and Sonic Arts Professional, Performer, > >>>> Instructor > >>>> > ACE, Sound Design MSc by Research (ongoing) > >>>> > The University of Edinburgh, UK > >>>> > ~ > >>>> > Portfolio: http://marcodonnarumma.com > >>>> > Lab: http://www.thesaddj.com | http://cntrl.sourceforge.net | > >>>> http://www.flxer.net > >>>> > Event: > >>>> > http://www.**liveperformersmeeting.net<http://www.liveperformersmeeting.net> > >>>> > > >>>> > __**_ > >>>> > Pd-list@iem.at mailing list > >>>> > UNSUBSCRIBE and account-management -> > >>>> > http://lists.puredata.info/**listinfo/pd-list<http://lists.puredata.info/listinfo/pd-list> > >>>> > > >>>> > > >>>> > >>>> > >>>> > >>>> -- > >>>> Jaime E Oliver LR > >>>> > >>>> www.jaimeoliver.pe > >>>> > >>>> 858 750 0924 (cel) > >>>> 858 202 1522 (home) > >>>> > >>>> > >>>> > >>> > >>> > >> > >> > > > > > > > -- > Marco Donnarumma > Independent New Media and Sonic Arts Professional, Performer, Instructor > ACE, Sound Design MSc by Research (ongoing) > The University of Edinburgh, UK > ~ > Portfolio: http://marcodonnarumma.com > Lab: http://www.thesaddj.com | http://cntrl.sourceforge.net | > http://www.flxer.net > Event: http://www.liveperformersmeeting.net > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Controlling pd patch from mobile phone
Hi, or depending how smart your smartphone is, some kind of network control could be possible as well. For iPhone there are nice OSC interfaces like murmur, probably Android has something similar, or, if Pd/RjDj is available, just use netsend/netreceive. You probably need to know the IP-number of your computer, though. Ciao -- Frank On Sat, Jul 09, 2011 at 12:31:32AM -0400, Hans-Christoph Steiner wrote: > > I think the easiest way would be to use the bluetooth as a serial port, > so you want the [comport] object. > > .hc > > On Jul 8, 2011, at 10:16 PM, adam sanches wrote: > >> Hello list, i need to control a pd patch in a computer from a smart >> phone. I would like to use the smart phone as a wireless control >> device for controlling the patch in the computer. >> >> Can i send data from my mobile phone to a pd patch in my computer >> using bluetooth? how can i do this?Do anybody have tried this? >> >> >> Thanks >> >> >> A. >> ___ >> Pd-list@iem.at mailing list >> UNSUBSCRIBE and account-management -> >> http://lists.puredata.info/listinfo/pd-list > > > > > > I spent 33 years and four months in active military service and during > that period I spent most of my time as a high class muscle man for Big > Business, for Wall Street and the bankers. - General Smedley Butler > > > > ___ > Pd-list@iem.at mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd "monosymphonia"
On Sun, Jun 26, 2011 at 12:32:27AM +0100, Andrew Faraday wrote: > P.S. I do realize that I could clean this up a great deal. The addition of > [table] objects could just as easily be a single expanding array, I could > hide modules away in sub patches and the sliders used for visualization could > be more efficiently done with gem. Regarding subpatches: I would do this kind of dynamic object generation in a subpatch anyway instead of putting the new objects into the main patch. That way, you can easily start with a fresh subpatch by sending "clean" to [s pd-subpatchname] instead of having to manually delete the created tables/objects. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] numeric order
Hi, On Sun, Jun 19, 2011 at 07:20:02PM +0200, Mirko Maier wrote: > i have textfile like > > 1 this; > 4 my; > 3 is; > 10 file; > > and i would like to put it into numerical order, so that the final result is > > 1 this; > 3 is; > 4 my; > 10 list; > > the only possibility i found was a recursive use of "minmax", but i have huge > lists and then it is very cpu-expensive. is there any object for numerical > ordering or something shorter than using "minmax"? thanks for hints. Another answer: You can also avoid the unnecessary (for your task) complex [m_symbolarray] if you use data structures directly as in the attached example. Unfortunatly creating scalars with symbol-fields is not directly possible with [append] - at least not in 0.42 - so I had to do the additional work of using [set -symbol ...] Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ sort-pair.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] numeric order
On Sun, Jun 19, 2011 at 07:20:02PM +0200, Mirko Maier wrote: > hi everybody, > > i have textfile like > > 1 this; > 4 my; > 3 is; > 10 file; > > and i would like to put it into numerical order, so that the final result is > > 1 this; > 3 is; > 4 my; > 10 list; > > the only possibility i found was a recursive use of "minmax", but i have huge > lists and then it is very cpu-expensive. is there any object for numerical > ordering or something shorter than using "minmax"? thanks for hints. [m_symbolarray] in the rj library can do this. It's a kind of array or [table] that stores symbols instead of numbers. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] d-scale abstraction with rjdj
Hi, On Fri, Jun 17, 2011 at 10:45:45AM -0400, Pagano, Patrick wrote: > But here is an FM glitcher using d-scale and Tonalatonal, I patch I found > on list a few years ago that is RIPE for rjDJ-ness > Maybe you can look at these and help me make em a little more spiffy, or > at very least get tonal working! Okay, that's a bit of tedious work. but doable. The patches only use [sort], which you can replace by [list-sort] with [list-rdrip] from the [list]-abstractions. They only use [sort 1] which is ascending sort i.e. a naked [list-sort]. A bit more tricky to replace are the expr-constructs used. Fortunatly [d-scale] is only used as [d-scale -1 1 1 100 100]. This is sufficiently similar to [m_scale -1 1 1 100 dB] from the rj-library, so I'd just use that. Another expression used several times is this: expr~ if ($v1 == 0, 0, (if ($v1 < 0, -1, 1))) This is a signum function for signals. You can replace this with the sgn~.pd from the "purepd" collection in CVS/Pd-extended. Make sure to also get the lt~.pd and gt~.pd abstractions. Alternatively you can also get away with this: [inlet~] |\ | [abs~] | | [/~] | [outlet~] I.e. divide a signal by its absolute value. Division of 0/0 in Pd here gives 0 again, so you're cheating okay around this exceptional case. The other expr-expression just require some work to explode them into normal math objects. You will gain a bit of execution speed by this, as expr is a bit slower than exploded math. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] d-scale abstraction with rjdj
Hi, On Fri, Jun 17, 2011 at 07:37:00AM -0400, Pagano, Patrick wrote: > I did not hear back yesterday and I am wondering > Can I use the d-scale abstraction David Mccallum wrote in rjdj? I answered now, but to answer in more general terms: If an abstraction uses only the objects and features that are in Pd-vanilla as downloadable from Miller's site and if it in addition does not use objects from the expr-family ([expr], [fexpr], [expr~]) which are GPL, then it will run in RjDj on iOS. A nice way to check this with Pd-extended instead of vanilla is starting Pd with the "-noprefs" option, so it does not load any externals and doesn't set any paths. If the abstraction doesn't give any errors about missing objects and if it doesn't use expr, then it will be fine. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] converting accelerometer & gyro to positive values
On Thu, Jun 16, 2011 at 09:21:53AM -0400, Pagano, Patrick wrote: > I am still fooling around with rjdj and I was wondering what way > people are using to turn r #acceleromter & r #gyro to positive values. > I usually use a mccallum abstraction d-scale for stuff like this but I > am not sure it will work with vanilla/rjlib, so I am wondering what > others may suggest. You can use the [m_scale] abstraction in rj to rescale values between various ranges, also using non-linear translations. If you are interested in the magnitude of the accelerometer settings you can also use the [m_accel_magnitude] abstraction, which whill give you the magnitude in all directions (i.e. how hard someone is shaking the device). Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sort and init objects
On Wed, Jun 15, 2011 at 02:11:20PM -0400, Mathieu Bouchard wrote: > On Wed, 15 Jun 2011, Pagano, Patrick wrote: > > >It seems to want a list-drip? > > Get the whole list-abs library. Recent versions (since about two > years) include my accelerated [list-drip] (formerly known as > [list-drip-quick]). > > It's not the fastest, but it's the simplest of the fast ones. If you get the newest [list]-abs now, you'll also get a new [list-sort] which now uses the fast data structure sorting method, replacing Michael Seta's very first [list-sort] implementation. Inside it requires [list-rdrip] which is a simplified version Matju's [list-drip] stripped of the reordering, so it "drips" a list in reverse order, which is a little bit faster again. (As we resort the list anyhow, the drip-order doesn't matter.) All in all it doesn't compare to Zexy's [sort] yet, because it drips and then rebuilds a list with the slow [list prepend]x[t a] idiom, but all in all it's already pretty okay. Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Re: [PD] Sort and init objects
Hi, On Sun, Jun 12, 2011 at 06:59:50PM +0200, Frank Barknecht wrote: > Another option would be sorting with data structures, which I usually do > today. > Attached is an example abstraction for data structure sorting (datasort.pd). > It > seems to be much faster than list-quicksort from list-abs (the currently > fastest sorting in there), but only sorts in ascending order. Well, thinking about it, descending order turned out to be dead simple, as it can be realized using a different order when building the final list ("append" instead of "prepend") so attached is a new version, that I'll probably add to the [list]-abs collection as it now has all the features of the other sorting methods, is simpler and faster. Ciao -- Frank BarknechtDo You RjDj.me? _ __footils.org__ list-datasort.pd Description: application/puredata ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list