[PD] No loadbang in dynamically created objects
Hey dudes, I'm on 0.43-0 vanilla and just noticed that [loadbang] bangs are not being fired within abstractions which are created dynamically. Am I missing something, or did I just stumble upon a bug? Cheers, -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] No loadbang in dynamically created objects
Great, I just realized this was recently touched up, so sorry for the repeat thread. This makes complete sense, the polyphonic host to my dynamic object creation is now sending [loadbang( messages to the newly created patches. Cheers, brandon On Sat, Aug 20, 2011 at 3:00 PM, Mathieu Bouchard ma...@artengine.cawrote: On Sat, 20 Aug 2011, brandon zeeb wrote: I'm on 0.43-0 vanilla and just noticed that [loadbang] bangs are not being fired within abstractions which are created dynamically. Am I missing something, or did I just stumble upon a bug? [loadbang] is something that has to be banging whenever the patching is finished. The patch that does dynamic creation is the one that is responsible for loadbanging the objects. Basic Pd only allows loadbanging a complete canvas, by sending a loadbang message to the canvas. However, there are extensions for doing other things. For example, [gf/canvas_loadbang], together with [gf/canvas_count], allows you to send a loadbang to only the newest objects, in a canvas that had already been loadbanged. (The rule is that loadbang should be done only once per object at most, never more than that.) Note that creating objects manually also does not cause any loadbangs, though it would be a good thing to have a menu item for triggering loadbang on objects that didn't exist back when loadbang was done in that canvas. That would be a quite awesome shortcut. __**__** ___ | Mathieu Bouchard tél: +1.514.383.3801 Villeray, Montréal, QC -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] timing
If Pd's default block size is 64 samples, and events are only processed at the beginning of a block cycle. Therefore, if you're running at 48,000hz sample rate, then your Event Rate is 750hz. Likewise a 96,000hz sample rate will give you a 1500hz Event Rate. As Mathieu mentioned, if you need anything higher than this, your only options are: 1. Decrease your block size 2. Calculate at audio-rate using ~ objects As for between samples, are you referring to some kind of upsampling? In that case, either increase the sample rate of a sub-patch using [block~] relative to the current sample rate, or use either a [delread~]/[delwrite~] pair or [fexpr~] to hold the last sample value from a given stream for calculation. ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] timing
My fault, you're right. I'm happily wrong about this one. Cheers, Brandon On Dec 22, 2010 9:52 AM, Roman Haefeli reduz...@gmail.com wrote: On Wed, 2010-12-22 at 09:01 -0500, brandon zeeb wrote: If Pd's default block size is 64 samples, a... Not true. Events a.k.a messages are 'virtually' [1] processed at any time (literally any time, which includes any time between samples. The only restriction is the resolution of the 32bit floating point number format used by Pd). This can be easily shown with this little patch: [metro 3.1415] | [t b b] || [timer] | [3.1415\ - number box You can change the metro to any value and [timer] will report back exactly that value. AFAIK, this exact timing occurs as long we're considering the message-only domain. However, there are some objectclasses which accept messages at the inlets and produce signals at the outlets, e.g. [sig~]. Many (almost all?) of them only evaluate the messages _at_ block boundaries and thus the resulting signal can only be changed at block boundaries. This effect makes the messages look like they only happen at block boundaries, although they actually happen at any time. There are other objects that work in both, message and signal domain, which don't suffer from that problem: [vline~] and [vsnapshot~]. Both take the exact timing of the message into account. [1]: I say 'virtually', because Pd actually really computes one or several events only once per block, though is this done transparently when looking from the outside. Summary: * [metro] and [del] are as accurate as you can wish them to be. * Always use [vline~] when timing-exact conversion from message to signal matters * most tilde-classes with message inlets ignore the timing of the messages * You don't need lower block sizes for having exact timing in the message domain * Messages triggered from external sources (GUIs [bng]/[hslider] etc., MIDI [midiin]/[ctlin] etc., networking [netreceive] etc., serial [comport], etc.) usually don't have more exact timing than the block size. Roman ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD OOP?
In my experience with emulating OOP in Pd I've had moderate success. As a Java developer by day, I find myself attempting to recreate familiar patterns within Pd (ie: usually IoC and Flyweight in Pd). Main problems with recreating OOP in Pd are the following: 1. Everything is global 2. No control over abstraction (object) construction order and lifecycle 3. No introspection (although not required, very helpful, and don't tell me it's in some external, I don't care!) 4. No concept of this 5. No interfaces or abstract abstractions (to control inlet patterns) 6. Unfriendly and inconsistent type system (it is cumbersome in real use, although I get over this by using [list]) 7. and on and on In most Pd patches, I see people using a few lookup tables again and again (ie: mtof). As this is a complete waste of memory, one can attempt the Flyweight pattern. However, doing so in Pd is a very dangerous game, as you will have NO idea which abstraction first created the table and thus have no control over retaining access to it. In my library I've dropped this approach in favor of something closer to IoC. Basic IoC is very possible, and indeed very rewarding. Very often I pass in other abstractions as object creation arguments. The most simple example of this in my library is my [bypass~] abstraction used to dynamically enable and disable a given abstraction. I use this EVERYWHERE to save CPU cycles in combination with another object to programmatically disable the sub-abstraction when the user selects a given value (ie: when the filter cutoff is at MAX with no resonance, disable the filter). In use: [bypass~ some_process~ 330 1 3 9] Where [bypass~] expects it's 1st argument to be an abstraction and the next 10 to be arguments to that abstraction. Every patch which uses [bypass]~ must have 1 signal inlet and 1 event inlet. Unfortunately, this interface can't be programmatically enforced. [bypass~] passes it's 1st two inlets to the sub-abstraction, while the 3rd is used to control [bypass~] I've attached [bypass~] and it's dependencies, have fun! ~Brandon bypass~-help.pd Description: Binary data bypass~.pd Description: Binary data mute~-help.pd Description: Binary data mute~.pd Description: Binary data defined-help.pd Description: Binary data defined.pd Description: Binary data ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD OOP?
Many options have been proposed over the years, my favorite thus far is [thiscanvas] http://lists.puredata.info/pipermail/pd-dev/2004-12/003430.html On Wed, Dec 15, 2010 at 8:34 AM, Jonathan Wilkes jancs...@yahoo.com wrote: What exactly would this (#4) look like in Pd? -Jonathan --- On *Wed, 12/15/10, brandon zeeb zeeb.bran...@gmail.com* wrote: From: brandon zeeb zeeb.bran...@gmail.com Subject: Re: [PD] PD OOP? To: PD List pd-list@iem.at Date: Wednesday, December 15, 2010, 1:51 PM In my experience with emulating OOP in Pd I've had moderate success. As a Java developer by day, I find myself attempting to recreate familiar patterns within Pd (ie: usually IoC and Flyweight in Pd). Main problems with recreating OOP in Pd are the following: 1. Everything is global 2. No control over abstraction (object) construction order and lifecycle 3. No introspection (although not required, very helpful, and don't tell me it's in some external, I don't care!) 4. No concept of this 5. No interfaces or abstract abstractions (to control inlet patterns) 6. Unfriendly and inconsistent type system (it is cumbersome in real use, although I get over this by using [list]) 7. and on and on In most Pd patches, I see people using a few lookup tables again and again (ie: mtof). As this is a complete waste of memory, one can attempt the Flyweight pattern. However, doing so in Pd is a very dangerous game, as you will have NO idea which abstraction first created the table and thus have no control over retaining access to it. In my library I've dropped this approach in favor of something closer to IoC. Basic IoC is very possible, and indeed very rewarding. Very often I pass in other abstractions as object creation arguments. The most simple example of this in my library is my [bypass~] abstraction used to dynamically enable and disable a given abstraction. I use this EVERYWHERE to save CPU cycles in combination with another object to programmatically disable the sub-abstraction when the user selects a given value (ie: when the filter cutoff is at MAX with no resonance, disable the filter). In use: [bypass~ some_process~ 330 1 3 9] Where [bypass~] expects it's 1st argument to be an abstraction and the next 10 to be arguments to that abstraction. Every patch which uses [bypass]~ must have 1 signal inlet and 1 event inlet. Unfortunately, this interface can't be programmatically enforced. [bypass~] passes it's 1st two inlets to the sub-abstraction, while the 3rd is used to control [bypass~] I've attached [bypass~] and it's dependencies, have fun! ~Brandon -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD OOP?
The point here refers to the common use of $0. This isn't necessarily a bad thing (and is actually helpful in most cases), but can make certain things a little more difficult with regards to true OOP. On Wed, Dec 15, 2010 at 9:14 AM, IOhannes m zmoelnig zmoel...@iem.atwrote: On 2010-12-15 13:51, brandon zeeb wrote: 1. Everything is global hmm, i'd say the content of a message is as local as can be. mfsdr IOhannes ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD OOP?
Sorry, gmail is hacking up the comment log. Comments are inline. On Wed, Dec 15, 2010 at 11:52 AM, Mathieu Bouchard ma...@artengine.cawrote: On Wed, 15 Dec 2010, brandon zeeb wrote: Say you compute a raised cosine window and store it in a table, this table is used within one instance of a granular table reading voice abstraction, 1-n of these abstractions are created at run time for polyphony. Now you have N instances of this table. Some people cache mtof in a table, and thus that was my original point. Oh ok. I couldn't imagine that people would cache mtof in a table. You can send reply-to $0-callback to [s mtof] and see whether your [r $0-callback] gets a bang. If it does, it's because there's a [r mtof] that sees that and has a [t b s]=[s] to send you back a bang. This thing is in an instance of the mtof-cache abstraction somewhere. If you don't get the reply, then you dynamically open the mtof-cache as a toplevel patch (so that the cache doesn't disappear when you close the patch that created it) and you auto-hide it using vis 0-[s $0-canvas] [namecanvas $0-canvas]. Does that sound good ? That's not a bad idea! Essentially attempting to delegate the creation of the table. In a given abstraction you do NOT have control of the order in which your abstractions are created in memory. Yes you do. It's the implicit object numbering. You can renumber an object by deleting and undeleting it. Any new object is created at the end of the order, such that when you save the patch, it will be reloadable in that order. That said, it's considered bad practice to rely on this. People who need to rely on this may use dynamic patching instead. Perhaps, but not if you're creating the objects by hand. As you say, it is a bad practice. I care more about Pd as a language and as a means to learn. For my purposes, using externals is pointless, I beg your pardon ??? Pd with a lot of externals is a language too ! although I do appreciate all the hard work. do you, really ? Why are people getting offended here? I'm simply attempting to avoid information overload, my background is primarily in software development, not DSP. I use Pd to help learn these basics, and I will use pd-extended when I've mastered the basics. With that in mind, what's the point in using a pre-baked filter if I haven't created my own and don't yet fully understand the theory behind it? This says more about me than it does you :) Basically, an abstraction (or object) is given what it needs to function by a 3rd party. Ok, then connections are given to the abstractions in a kind of attribute that we call an outlet : wouldn't that be a form of IoC ? Nope, that would be delegation. A simple example would be this. Assume you have an abstraction which uses [metro] to synchronize a particular process. Now, if you wanted to synchronize with mates on the net using [netro],* you would have to create a second abstraction*! Using IoC / Strategy, you create your abstraction and pass a symbol referencing the metronome you want to use. In Java / Spring IoC psuedocode: class DoFunThings { private ICounter counter; private ISomeFunThing funThing; public void setCounter(ICounter newCounter) { * counter = newCounter;* } public void setSomeFunThing(ISomeFunThing thing) { funThing = thing; } public void doIt(Intlet inlet1, Inlet inlet2) { * int val = counter.next();* funThing(val); } } /// now let's build it ICounter netCounter = new NetCounter(127.0.0.1); DoFunThings myAbstraction = new DoFunThings(); myAbstraction.setCounter(netCounter); //... this is boring myAbstraction.setCounter(new LocalMetronome(100)); Within Pd we can't achieve pure IoC since we can't construct abstractions by themselves and pass them into other abstractions. Although, we can only pass along the name of the abstraction with it's creation arguments. This rides a blurry line between Strategy and IoC patterns. Is this making more sense? Cheers, -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD OOP?
On Wed, Dec 15, 2010 at 6:49 PM, Mathieu Bouchard ma...@artengine.cawrote: On Wed, 15 Dec 2010, brandon zeeb wrote: do you, really ? Why are people getting offended here? Am I getting offended ? How would you know, anyway ? Well, you're certainly argumentative :-/ Having to reinvent all that's outside of pd-vanilla is a more severe information overload. If your background is in software development, then you know that you should rely on libraries to get stuff done. I use Pd to help learn these basics, and I will use pd-extended when I've mastered the basics. But, as I said, many of what I consider to be basics are outside of pd-vanilla (while several things in pd-vanilla are rarely ever used by anyone). Relying on the pre-baked solution that is pd-extended doesn't make for a very rewarding learning experience. Yet, if I were being paid for this, I would definitely be making use of pd-extended because as you mentioned, my primary motivation would be getting stuff done. As a software developer, I'm keen on avoiding the reliance on superfluous dependency, and right now pd-extended is just that. With that in mind, what's the point in using a pre-baked filter if I haven't created my own It's so that you don't have to create your own. As I mentioned, I do want to create my own... to learn. Using IoC / Strategy, you create your abstraction and pass a symbol referencing the metronome you want to use. But you can also create the [metro] outside of the object, provided that you have an inlet in the abstraction that accepts the bangs, and zero, one or two outlets for connecting back to [metro] depending on needs. Isn't that IoC ? Yes, that would be a fine example when the payload is rather simple, and when tilde~ objects aren't involved (block delay!). Anything beyond 1 or two outlet/inlet pairs would probably be too cryptic for my uses, but the same would go for creation style IoC. In Java / Spring IoC psuedocode: No idea what Spring is... and it doesn't seem to be used in your pseudocode, does it ? Most Java classes used in Spring follow that example with setters for most dependencies. With regards to IoC, Spring is the agent that deals with creating objects, resolving setter and constructor dependency, and connecting them together. This is accomplished either through XML, annotations, or simple code (as in my example, where I'm instantiating the objects myself). -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD OOP?
Yes, I would, as they fill language gaps :) While we're at it, toss in the IEM stuff (soundfile_info, iemguts, etc). On Wed, Dec 15, 2010 at 8:09 PM, Jonathan Wilkes jancs...@yahoo.com wrote: Would you make use of the following if they were included in Pd vanilla? * symbol2list * initbang and closebang * a way to read a text file that's guaranteed to not generate a bad argument error -Jonathan --- On *Thu, 12/16/10, brandon zeeb zeeb.bran...@gmail.com* wrote: From: brandon zeeb zeeb.bran...@gmail.com Subject: Re: [PD] PD OOP? To: Mathieu Bouchard ma...@artengine.ca Cc: PD List pd-list@iem.at Date: Thursday, December 16, 2010, 1:45 AM On Wed, Dec 15, 2010 at 6:49 PM, Mathieu Bouchard ma...@artengine.cahttp://mc/compose?to=ma...@artengine.ca wrote: On Wed, 15 Dec 2010, brandon zeeb wrote: do you, really ? Why are people getting offended here? Am I getting offended ? How would you know, anyway ? Well, you're certainly argumentative :-/ Having to reinvent all that's outside of pd-vanilla is a more severe information overload. If your background is in software development, then you know that you should rely on libraries to get stuff done. I use Pd to help learn these basics, and I will use pd-extended when I've mastered the basics. But, as I said, many of what I consider to be basics are outside of pd-vanilla (while several things in pd-vanilla are rarely ever used by anyone). Relying on the pre-baked solution that is pd-extended doesn't make for a very rewarding learning experience. Yet, if I were being paid for this, I would definitely be making use of pd-extended because as you mentioned, my primary motivation would be getting stuff done. As a software developer, I'm keen on avoiding the reliance on superfluous dependency, and right now pd-extended is just that. With that in mind, what's the point in using a pre-baked filter if I haven't created my own It's so that you don't have to create your own. As I mentioned, I do want to create my own... to learn. Using IoC / Strategy, you create your abstraction and pass a symbol referencing the metronome you want to use. But you can also create the [metro] outside of the object, provided that you have an inlet in the abstraction that accepts the bangs, and zero, one or two outlets for connecting back to [metro] depending on needs. Isn't that IoC ? Yes, that would be a fine example when the payload is rather simple, and when tilde~ objects aren't involved (block delay!). Anything beyond 1 or two outlet/inlet pairs would probably be too cryptic for my uses, but the same would go for creation style IoC. In Java / Spring IoC psuedocode: No idea what Spring is... and it doesn't seem to be used in your pseudocode, does it ? Most Java classes used in Spring follow that example with setters for most dependencies. With regards to IoC, Spring is the agent that deals with creating objects, resolving setter and constructor dependency, and connecting them together. This is accomplished either through XML, annotations, or simple code (as in my example, where I'm instantiating the objects myself). -- Brandon Zeeb -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] if within a range of numbers then true
Use a series of [moses] objects to set your low and high point with a trigger banging the hot inlet of a [f] object with your desired value. On Mon, Nov 22, 2010 at 8:37 PM, Ben Carney bfcar...@gmail.com wrote: Hello all, I have become rusty in pure data. It seems as if I used to know the answer to this. I would like to beable to output a 1 if a number is within a certain range example: [number box\ | | [If between 11 and 20] | | | [X] I thought this would be easier to come up with a solution than it has been thanks in advance. -- benfcarney www.benfcarney.com Chicago, IL ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Purpose of sig~
In response to your example below, the result of the addition will be 5~ given that messages [2( and [3( were sent while DSP was off. This is a surprise to me! [sig~] can be helpful when you require a constant value at audio-rate, any example I can conjure seems contrived (as in writing a constant value to a tabwrite~). On Wed, Nov 3, 2010 at 11:21 AM, Mathieu Bouchard ma...@artengine.cawrote: Why not have implicit control - signal conversion everywhere it is possible? For example why not allow this? |2( |3( | | [+~ ] This is allowed (though I haven't checked the details of what happens if you send that while dsp is off). ___ | Mathieu Bouchard -- Villeray, Montréal, QC ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Brandon Zeeb ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-Linear Quantization / Bitcrush
I've attached my best attempt at recreating this effect, the attached PNG will be used as a reference. Given the distance d1 and d2, these distances are usually identical in a traditional bitcrush or simple quantization. I would like to be able to vary the distance between points of an incoming signal such that the distance between points is a function of a given quantization value, the current Y value, AND a given quantization curve. As a first step (and illustrated in the attached PNG), smaller values of Y will produce a more pronounced quantization given a x^2 quantization curve while larger values of Y will produce a smaller distance between steps. Ideas? ~Brandon On Tue, Nov 2, 2010 at 10:47 AM, Ludwig Maes ludwig.m...@gmail.com wrote: could you give examples of idealized input and output for cases 1-4? im not sure I understand what exactly you want... interested greetings! Ludwig On 1 November 2010 13:09, brandon zeeb zeeb.bran...@gmail.com wrote: Hey All, I've been burning my brain over this issue lately and I can't seem to come up with an elegant solution, and stay with me here as I attempt to explain it best I can. For me and my needs, being able to quantize an arbitrary signal to any arbitrary series is the Holy Grail (and I'm not talking about simple table lookup!). I'm looking to quantize an incoming signal (or value) given a max and min quantization value and an arbitrary curve. Think quantization of note events to a series of note lengths or your standard bitcrush algorithm, it's pretty much the same. The arbitrary curve should influence the degree to which the bitcrush algorithm is applied to the signal such that one could have less quantization at smaller values of the input signal, and greater quantization and larger values (or vice versa). Simple table-lookup is insufficient as it requires you to pre-define a maximum input signal amount. I'm willing to waive this requirement if an implementation is not possible without it. This will be used in the following circumstances: To quantize envelopes signals to any arbitrary series (say !, Fibonacci, x^2, 2^x, etc) To quantize signal loop length values to an arbitrary series of note values (say 1/16, 1/8, 1/2, 1/1) To apply non-linear bitcrushing to a signal such that higher values are expressed with less of an effect than smaller values To quantize pitch events to a pre-defined series Is this making sense? My attempts thus far has extended the RjDj bitcrush abstraction with mild success. I can recreate the effect but the output signal bears too many artifacts from the input signal (ie: the curve retains part of it's original slope from the input signal and is not flattened or held until the next value). Thanks, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Brandon Zeeb Columbus, Ohio attachment: my-crush-ex.png my-crush.pd Description: Binary data ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-Linear Quantization / Bitcrush
This is even better. If I could minimize the jumps around Y = 0.5 to -0.5 It'll be exactly what I'm looking for... or a start at least. Do you see what I mean now? See how the amount of quantization changes with Y and a minimum quantization value? I think I'm getting towards the answer now... -- Brandon Zeeb Columbus, Ohio attachment: my-crush2-ex.png my-crush2.pd Description: Binary data ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Non-Linear Quantization / Bitcrush
Great! Unfortunately, I'm not entirely sure how to realize this in Pd. Can you help me out with a little example? Thanks On Tue, Nov 2, 2010 at 2:37 PM, Ludwig Maes ludwig.m...@gmail.com wrote: So you want amplitude 'a' dependant quantization size 'q' ? take your chosen q(a); in your example it seems you want a simple line: q=q(0)-k*a; define f(a) as integral of 1/q from a=0 to a; also calculate the inverse of f(a) i.e. a(f); now for each sample do: out=a(round(f(in))) where round is any floor or the like... have fun! ps: in your example: q=q0-k*a with for example q(0)=0.001 and q(0.8)=0.0001: q:=0.001-0.0009/0.8*a then f=2558.427881-.11*ln(10.-9.*a) and inverse=easy On 2 November 2010 19:20, Ludwig Maes ludwig.m...@gmail.com wrote: This is pretty easy actually, I use such things mostly to guide my rhythmical quantization... On 2 November 2010 19:19, brandon zeeb zeeb.bran...@gmail.com wrote: This is even better. If I could minimize the jumps around Y = 0.5 to -0.5 It'll be exactly what I'm looking for... or a start at least. Do you see what I mean now? See how the amount of quantization changes with Y and a minimum quantization value? I think I'm getting towards the answer now... -- Brandon Zeeb Columbus, Ohio -- Brandon Zeeb Columbus, Ohio ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd 20% idle CPU usage on MBP
Great detective work! I'd love to see better CPU performance on OS X. Hopefully this also implies that one could see their Pd-Jack performance increase as well. Cheers, ~Brandon On Mon, Nov 1, 2010 at 7:31 AM, Jamie Bullock ja...@postlude.co.uk wrote: On 28 Oct 2010, at 17:55, Mathieu Bouchard wrote: On Thu, 28 Oct 2010, brandon zeeb wrote: This thread comes up every year or two, I'd say at least twice a year... I think I already wrote about it on pd-list this autumn, no...? But it's hard to search the archives about the frequency of that thread, as the keywords might not be consistent. I just know that the problem has existed for quite a few years and that I read about it on pd-list more than a handful of times. Indeed! I remembered it coming up and so I searched the archives before posting, but keywords like 'cpu' and 'usage' don't do very much. However, digging a little with Shark, I see that a high proportion of Pd's CPU time is spent talking with the audio hardware, so I try Google: DspFuncLib portaudio, and lo and behold: http://www.google.co.uk/search?q=DspFuncLib+portaudio Trouble is use jack doesn't solve the problem, it merely avoids it. So, zooming in a bit, I see at least two issues here: 1. there is a lot of activity in the underlying audio drivers when using the Portaudio driver on OS X, even when audio is off in the application. Let's call this the 'idle' CPU usage. IMO, this should be less than 1% on modern CPUs for well behaved applications. I've added this to the bug tracker. 2. there is a lot of activity in the underlying audio drivers when using the Portaudio driver on OS X, when audio is on in Pd. Comparison with AudioMulch, which also uses Portaudio suggests that is only in part a Portaudio problem. AudioMulch idles at ~10% on my machine. I suspect that the problem with Pd+portaudio may be due to a small buffer size used by Pd. I thought Pd's 'Delay' setting in audio preferences was supposed to handle this, but changing delay to 500ms, has no effect on CPU use. Also added to tracker. Jamie ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Non-Linear Quantization / Bitcrush
Hey All, I've been burning my brain over this issue lately and I can't seem to come up with an elegant solution, and stay with me here as I attempt to explain it best I can. For me and my needs, being able to quantize an arbitrary signal to any arbitrary series is the Holy Grail (and I'm not talking about simple table lookup!). I'm looking to quantize an incoming signal (or value) given a max and min quantization value and an arbitrary curve. Think quantization of note events to a series of note lengths or your standard bitcrush algorithm, it's pretty much the same. The arbitrary curve should influence the degree to which the bitcrush algorithm is applied to the signal such that one could have less quantization at smaller values of the input signal, and greater quantization and larger values (or vice versa). Simple table-lookup is insufficient as it requires you to pre-define a maximum input signal amount. I'm willing to waive this requirement if an implementation is not possible without it. This will be used in the following circumstances: 1. To quantize envelopes signals to any arbitrary series (say !, Fibonacci, x^2, 2^x, etc) 2. To quantize signal loop length values to an arbitrary series of note values (say 1/16, 1/8, 1/2, 1/1) 3. To apply non-linear bitcrushing to a signal such that higher values are expressed with less of an effect than smaller values 4. To quantize pitch events to a pre-defined series Is this making sense? My attempts thus far has extended the RjDj bitcrush abstraction with mild success. I can recreate the effect but the output signal bears too many artifacts from the input signal (ie: the curve retains part of it's original slope from the input signal and is not flattened or held until the next value). Thanks, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] dub chords in Pd
To Roman's suggestion, this works well. For the sake of your speakers and DSP chain, I'd add a [clip~ -1 1] to the end of that to be safe, and place that combo both right before the [delwrite~ dub] and on the output stream. For the sake of maximum dub, use a [vd~] instead of a [delread~] and slowly apply modulation to the base index delay amount. Say, 500ms +/- 50 by modulating the base amount either with a periodic function or [lop~] filtered [noise~]. I've yet to try this, but in my head it seems dubby. Brandon On Fri, Oct 29, 2010 at 6:00 AM, Roman Haefeli reduz...@gmail.com wrote: On Fri, 2010-10-29 at 11:43 +0200, Derek Holzer wrote: But one problem in Pd is that delay lines and filters tend to blow up instead of saturate like the old school gear. Good point. Real tape delays cannot blow up. Have you tried to put a tanh function in the feedback loop? Haven't tried myself, but I could imagine that it'll work. Roman ___ 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] dub chords in Pd
Agreed, Check the help patch H15.phaser.pd and H03.band-pass.pd, I'd start with running your favorite saw chords into a bandpass filter triggered by note-on, sweep that downward. Patch that into the recirculating delay Andy described (touch of distortion with a bandpass in the delay feedback loop). Finally, add a phasor to the final output. For maximum dub, dangerously vary all important parameters. In sum you have three components: 1. Simple instrument with bandpass filter descending (and resetting) on note-on 2. Recirculating delay with slight distortion on the input, and a bandpass filter in the feedback loop 3. Phasor on output You could probably do similar any number of different ways, but this is how I'd try it. Best, ~Brandon On Thu, Oct 28, 2010 at 5:31 AM, jurgen noise@gmail.com wrote: every reggae music mix since Lee Perry has been using this type of sound. I used a cheapo yamaha portasound in the early 80s to do that, plus a fat phasor effect on it. then there's a short delay on it as well with a different EQ setting. if you want to create a phasor effect in pd you either create a very short delay or (I think better) a bank of notch filters, either boost or cut. with a metro you can then slide through the frequencies with range and speed of your liking. Jurgen On Oct 28, 2010, at 5:16 PM, Marco Donnarumma wrote: Yes, check this: http://soundcloud.com/bemong/03-rhythm-sound-mango-drive well, the whole tune, specially at 3' 05 so those are the dub chords I'm talking about :P Sorry for not specifying before, Thanks, Marco From: brandon zeeb zeeb.bran...@gmail.com Subject: Re: [PD] dub chords in Pd To: PD List pd-list@iem.at Message-ID: aanlktikivqu9s2jp+yba55a68hjrw7cti7zrssp6q...@mail.gmail.comaanlktikivqu9s2jp%2byba55a68hjrw7cti7zrssp6q...@mail.gmail.com Content-Type: text/plain; charset=iso-8859-1 There are many ways to peel that apple, can you post an example of something similar to what you're aiming for? Cheers, ~Brandon -- Marco Donnarumma aka TheSAD Independent New Media Arts Professional, Performer, Teacher Ongoing MSc by Research, 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 ___ 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] Pd 20% idle CPU usage on MBP
This thread comes up every year or two, try running Pd with JackOSX instead of having Pd communicate directly with OS X. You should see the Pd process decrease it's CPU usage significantly. My guess is it's a Pd- PortAudio - OS X thing. Cheers, ~Brandon On Thu, Oct 28, 2010 at 12:42 PM, Bernardo Barros bernardobarr...@gmail.com wrote: I get this bug since 2005 on the mac... maybe related to a broad issue in gui-pd communication? 2010/10/28 Claude Heiland-Allen claudiusmaxi...@goto10.org: Hi, On 28/10/10 16:41, Jamie Bullock wrote: Pd's idle CPU usage is 15-20%. Does anyone know why this is? probably a bug.. you could try using gdb and interrupting Pd to see where it is being busy, or some profiling tool (gprof or strace or shark (?) or something else). Is there anything that can be done to improve the situation? Try turning DSP on and then off again, maybe. Claude ___ 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 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd 20% idle CPU usage on MBP
Seriously, use Jack, and watch the CPU usage drop significantly. On Thu, Oct 28, 2010 at 1:06 PM, Bernardo Barros bernardobarr...@gmail.comwrote: sorry for the speculation. I really did not go deeper into this, I just used linux and less pd. but 20%cpu is a serious bu anyway. 2010/10/28 Mathieu Bouchard ma...@artengine.ca: On Thu, 28 Oct 2010, Bernardo Barros wrote: I get this bug since 2005 on the mac... maybe related to a broad issue in gui-pd communication? You'd have to justify that. I don't think it can have to do with anything except the DSP engine and/or PortAudio (did anyone investigate this ?) ___ | Mathieu Bouchard -- Villeray, Montréal, QC ___ 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] dub chords in Pd
There are many ways to peel that apple, can you post an example of something similar to what you're aiming for? Cheers, ~Brandon On Wed, Oct 27, 2010 at 7:29 AM, Marco Donnarumma de...@thesaddj.comwrote: Thanks Andy, the delay is quite clear now, and what about the source? Do you think phasors chords could do the job? I reckon I should work out a proper envelope to synthesise a similar attack (like a rapidly bowed guitar chord). thanks M Message: 6 Date: Mon, 25 Oct 2010 20:43:28 +0100 From: Andy Farnell padawa...@obiwannabe.co.uk Subject: Re: [PD] dub chords in Pd To: pd-list@iem.at Message-ID: 20101025204328.39a3f601.padawa...@obiwannabe.co.uk Content-Type: text/plain; charset=US-ASCII The lossy part needs to go into the feedback loop of the delay. Each time around the loop the distortion function shifts some of the energy away from it's original position, some up and out band and some into the capture of the bandpass. As it goes round and round (recurses) it gets focussed more and more into one or two places. Good dub delays are always pretty close to exploding in certain frequencies close to the 1-2kHz mid. That's the trick. You need to experiment with dangerously unstable settings to get it to sing. Distortion followed by bandbass. Any kind of tape and amp simulation in the loop usually works quite well. Some of the best old dub delay IMHO is from a bucket brigade delay circa '76/77 that used leaky capacitors to simulate a tape, a kind of analogue data buffer. http://www.youtube.com/watch?v=XYepvarTsVM @3.44 can get a subtle, spooky, slow timbral shift if you catch it and ride it. http://www.youtube.com/watch?v=MgAfsUdQc_A @2.40 + -- Marco Donnarumma aka TheSAD Independent New Media Arts Professional, Performer, Teacher Ongoing MSc by Research, 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 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Any Columbus, Ohio Pd Users Out There?
Hey all, Any PD users out there from Columbus, Ohio? If so, we should get a group together. Let me know! ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] namecanvas obsolete? Why? Re: Dynamic Graph on Parent
According to [namecanvas] help, this object is obsolete? How else can one send a message to one and only one abstraction without using namecanvas? Is there the concept of 'this'? The example below will send a message to all patchname.pd abstractions, this is not what I think most require: [message( | [s pd-patchname.pd] On Wed, Sep 29, 2010 at 10:30 PM, brandon zeeb zeeb.bran...@gmail.comwrote: Oh, that is awesome! Thanks a bunch for compiling these for me. Going to have some fun tonight... ~B On Wed, Sep 29, 2010 at 10:13 PM, Jonathan Wilkes jancs...@yahoo.comwrote: You can create [namecanvas $0-foo] in the relevant canvas, then [message( | [s $0-foo] You can also send a message to a named subpatch like [pd foo] by prefixing the subpatch name with pd- like this: [message( | [s pd-foo] And finally, send to an abstraction or open patch (globally) by using: [message( | [s pd-patchname.pd] I'm not sure if the pd- prefix is explicitly documented anywhere-- I only remember seeing it in passing with reference to traversing scalars. Maybe it could be added to doc/manuals/pd-msg, then have a link to that from canvas-help.pd. -Jonathan --- On *Thu, 9/30/10, brandon zeeb zeeb.bran...@gmail.com* wrote: From: brandon zeeb zeeb.bran...@gmail.com Subject: Re: [PD] Dynamic Graph on Parent To: PD List pd-list@iem.at Date: Thursday, September 30, 2010, 3:53 AM How is this sent to the current patch? Can you give me a quick example. Thanks ~B On Wed, Sep 29, 2010 at 4:41 PM, Jonathan Wilkes jancs...@yahoo.comhttp://mc/compose?to=jancs...@yahoo.com wrote: A canvas accepts a donecanvasdialog message that can be used to do what you want. Search the list for that. There's also the coords message, which takes its arguments in a different order than donecanvasdialog and doesn't set the dirty flag for Pd 0.43. Other than that I'm not sure what the differences are between the two messages. -Jonathan --- On *Wed, 9/29/10, brandon zeeb zeeb.bran...@gmail.comhttp://mc/compose?to=zeeb.bran...@gmail.com * wrote: From: brandon zeeb zeeb.bran...@gmail.comhttp://mc/compose?to=zeeb.bran...@gmail.com Subject: [PD] Dynamic Graph on Parent To: PD List pd-list@iem.at http://mc/compose?to=pd-l...@iem.at Date: Wednesday, September 29, 2010, 10:08 PM Is there a way to dynamically adjust and enabled graph on parent (GOP)? I'm building some UI sequencer widgets and it would be preferable to dynamically adjust the GOP size given user input, say number of steps in a step sequencer (ie: an 8x8 vs a 16x16 step sequencer using the same abstraction). If this is documented anywhere a link to the docs will suffice, I'm unable to find any. Thanks, ~Brandon -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@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] namecanvas obsolete? Why? Re: Dynamic Graph on Parent
What I'm seeing here is basically there is no currently supported way in vanilla pd to adjust GOP properties for a particular abstraction (not globally)? If so, this is rather upsetting :( ~Brandon On Thu, Sep 30, 2010 at 3:11 AM, IOhannes m zmoelnig zmoel...@iem.atwrote: On 2010-09-30 09:02, brandon zeeb wrote: According to [namecanvas] help, this object is obsolete? How else can one send a message to one and only one abstraction without using namecanvas? Is there the concept of 'this'? iemguts kind of introduces a concept of this. most of the objects work on either this or parent of this or some other direct ancestor of this. otoh, pd itself never actively supported dynamic patching. iirc, the reason for obsoleting [namecanvas] is that it allows the dynamic patching engine to get into an inconsistent (probably crashing) state (true, there are other things that allow this as well, without getting obsoleted). anyhow, [namecanvas] has no concept of this either. fgmadsr IOhannes ___ 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] namecanvas obsolete? Why? Re: Dynamic Graph on Parent
Dynamic patching is one of the best thing PD has going for it. Without the ability to dynamically construct abstraction content, PD is an effort in extreme manual labor, and as a software developer, I disagree with the concept of manual labor. On Thu, Sep 30, 2010 at 8:14 AM, Mathieu Bouchard ma...@artengine.cawrote: In Pd's dynamic patching you have to put up with Miller telling you that dynamic patching is not really supported, while the rest of the people use dynamic patching on a daily basis. Get used to it, and don't worry. Dynamic patching can't possibly disappear at this point. It's not the only part of Pd that is said that it could change at any time, but haven't really changed since Pd 35 or so. ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] namecanvas obsolete? Why? Re: Dynamic Graph on Parent
http://lists.puredata.info/pipermail/pd-dev/2004-12/003428.html Essentially, being able to send a message to the current canvas in vanilla-pd without naming it, this in the current context is similar to the Java concept of this. If Miller wants to remove [namecanvas], just give us a this expression! What about $! ? ~Brandon On Thu, Sep 30, 2010 at 8:13 AM, Mathieu Bouchard ma...@artengine.cawrote: On Thu, 30 Sep 2010, IOhannes m zmoelnig wrote: iirc, the reason for obsoleting [namecanvas] is that it allows the dynamic patching engine to get into an inconsistent (probably crashing) state (true, there are other things that allow this as well, without getting obsoleted). Especially, you can crash pd using the thing that is supposed to be replacing namecanvas, using a total of 3 objects. So, the reason for obsoleting [namecanvas] is bogus. Here's an attachment for demonstrating that. anyhow, [namecanvas] has no concept of this either. What's a concept of this, to you ? It seems that we don't agree on this... we're not using the same vocabulary. ___ | Mathieu Bouchard -- Villeray, Montréal, QC ___ 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] biquad equation for vcf~?
You might also find this file helpful, a kind of filter bible: http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt On Mon, Sep 27, 2010 at 5:29 AM, cyrille henry c...@chnry.net wrote: hello, you have some exter to compute biquad~ coef in ggee/filter repertory. i also made some abstraction to compute bq~ coef. you can find them in nusmuk directory in svn. Cyrille Le 27/09/2010 10:34, Maurizio Giri a écrit : Hi, I'm trying to convert some PD patches to MaxMSP. However I have a problem with the vcf~ object, it seems it doesnt have an EXACT equivalent in maxmsp: reson~, svf~, and the filtergraph~ bandpass all sound different from vcf~ I'd like to use biquad~ to emulate a vcf~ filter, but I don't have the vcf~ formula to calculate the coefficients. Does somebody know how I can calculate them? As I said filtergraph~, reson~ and the other maxmsp objects are not identical to vcf~ so they are not good for my pourpose. TIA! mau ___ 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 ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] namecanvas obsolete? Why? Re: Dynamic Graph on Parent
Sorry, that last example should read: [clear( | | [s $!] On Thu, Sep 30, 2010 at 1:42 PM, brandon zeeb zeeb.bran...@gmail.comwrote: In my happy world, one could perform the following: [coords 0 -1 1 1 80 90 1 100 100;( | | [s $!] With the example above, one could perform canvas operations on the current canvas, ie: this. So to answer your question, $! would be the equivalent to whatever name you supplied in [namecanvas], so it's type would be that of the canvas, an object type. Therefore, if you attempted the following, no error should occur (again, in my happy world) [clear( | | [s $1] Miller? Cheers, ~Brandon On Thu, Sep 30, 2010 at 1:22 PM, Mathieu Bouchard ma...@artengine.cawrote: On Thu, 30 Sep 2010, brandon zeeb wrote: If Miller wants to remove [namecanvas], just give us a this expression! What about $! ? What would be the type of $! ? I don't think that there is any atom-type for supporting the feature that you suggest. see also http://lists.puredata.info/pipermail/pd-list/2006-02/035454.html ___ | Mathieu Bouchard -- Villeray, Montréal, QC ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] namecanvas obsolete? Why? Re: Dynamic Graph on Parent
In my happy world, one could perform the following: [coords 0 -1 1 1 80 90 1 100 100;( | | [s $!] With the example above, one could perform canvas operations on the current canvas, ie: this. So to answer your question, $! would be the equivalent to whatever name you supplied in [namecanvas], so it's type would be that of the canvas, an object type. Therefore, if you attempted the following, no error should occur (again, in my happy world) [clear( | | [s $1] Miller? Cheers, ~Brandon On Thu, Sep 30, 2010 at 1:22 PM, Mathieu Bouchard ma...@artengine.cawrote: On Thu, 30 Sep 2010, brandon zeeb wrote: If Miller wants to remove [namecanvas], just give us a this expression! What about $! ? What would be the type of $! ? I don't think that there is any atom-type for supporting the feature that you suggest. see also http://lists.puredata.info/pipermail/pd-list/2006-02/035454.html ___ | Mathieu Bouchard -- Villeray, Montréal, QC ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Dynamic Graph on Parent
Is there a way to dynamically adjust and enabled graph on parent (GOP)? I'm building some UI sequencer widgets and it would be preferable to dynamically adjust the GOP size given user input, say number of steps in a step sequencer (ie: an 8x8 vs a 16x16 step sequencer using the same abstraction). If this is documented anywhere a link to the docs will suffice, I'm unable to find any. Thanks, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Outdated Tutorials on Puredata.info
Hey all, A few of the tutorials on http://puredata.info/docs/tutorials reference dead links. If you own these tuts, may I ask that you update them? Pretty please? :) Cheers, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Dynamic Graph on Parent
How is this sent to the current patch? Can you give me a quick example. Thanks ~B On Wed, Sep 29, 2010 at 4:41 PM, Jonathan Wilkes jancs...@yahoo.com wrote: A canvas accepts a donecanvasdialog message that can be used to do what you want. Search the list for that. There's also the coords message, which takes its arguments in a different order than donecanvasdialog and doesn't set the dirty flag for Pd 0.43. Other than that I'm not sure what the differences are between the two messages. -Jonathan --- On *Wed, 9/29/10, brandon zeeb zeeb.bran...@gmail.com* wrote: From: brandon zeeb zeeb.bran...@gmail.com Subject: [PD] Dynamic Graph on Parent To: PD List pd-list@iem.at Date: Wednesday, September 29, 2010, 10:08 PM Is there a way to dynamically adjust and enabled graph on parent (GOP)? I'm building some UI sequencer widgets and it would be preferable to dynamically adjust the GOP size given user input, say number of steps in a step sequencer (ie: an 8x8 vs a 16x16 step sequencer using the same abstraction). If this is documented anywhere a link to the docs will suffice, I'm unable to find any. Thanks, ~Brandon -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@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] Dynamic Graph on Parent
Oh, that is awesome! Thanks a bunch for compiling these for me. Going to have some fun tonight... ~B On Wed, Sep 29, 2010 at 10:13 PM, Jonathan Wilkes jancs...@yahoo.comwrote: You can create [namecanvas $0-foo] in the relevant canvas, then [message( | [s $0-foo] You can also send a message to a named subpatch like [pd foo] by prefixing the subpatch name with pd- like this: [message( | [s pd-foo] And finally, send to an abstraction or open patch (globally) by using: [message( | [s pd-patchname.pd] I'm not sure if the pd- prefix is explicitly documented anywhere-- I only remember seeing it in passing with reference to traversing scalars. Maybe it could be added to doc/manuals/pd-msg, then have a link to that from canvas-help.pd. -Jonathan --- On *Thu, 9/30/10, brandon zeeb zeeb.bran...@gmail.com* wrote: From: brandon zeeb zeeb.bran...@gmail.com Subject: Re: [PD] Dynamic Graph on Parent To: PD List pd-list@iem.at Date: Thursday, September 30, 2010, 3:53 AM How is this sent to the current patch? Can you give me a quick example. Thanks ~B On Wed, Sep 29, 2010 at 4:41 PM, Jonathan Wilkes jancs...@yahoo.comhttp://mc/compose?to=jancs...@yahoo.com wrote: A canvas accepts a donecanvasdialog message that can be used to do what you want. Search the list for that. There's also the coords message, which takes its arguments in a different order than donecanvasdialog and doesn't set the dirty flag for Pd 0.43. Other than that I'm not sure what the differences are between the two messages. -Jonathan --- On *Wed, 9/29/10, brandon zeeb zeeb.bran...@gmail.comhttp://mc/compose?to=zeeb.bran...@gmail.com * wrote: From: brandon zeeb zeeb.bran...@gmail.comhttp://mc/compose?to=zeeb.bran...@gmail.com Subject: [PD] Dynamic Graph on Parent To: PD List pd-list@iem.at http://mc/compose?to=pd-l...@iem.at Date: Wednesday, September 29, 2010, 10:08 PM Is there a way to dynamically adjust and enabled graph on parent (GOP)? I'm building some UI sequencer widgets and it would be preferable to dynamically adjust the GOP size given user input, say number of steps in a step sequencer (ie: an 8x8 vs a 16x16 step sequencer using the same abstraction). If this is documented anywhere a link to the docs will suffice, I'm unable to find any. Thanks, ~Brandon -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -Inline Attachment Follows- ___ Pd-list@iem.at http://mc/compose?to=pd-l...@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
[PD] Introduction to elementary filter components in Pd
Greetings, So I'm reading Miller's book hoping for a real world explanation of the elementary filter objects in Pd (z~, rpole~, czero~, etc). Unfortunately, this only occupies 3-4 pages. Does anyone have a set of tutorials, abstractions, or are their any documents available which go into further detail into these objects? For starters, I'd like to build a few simple classic filter types (ie: lpf, hpf w/ recirculation). lop~, hip~, and bp~ are nice, and one can build recirculating filters with these, but they don't offer audio-rate control of filter cutoff. So, for an intermediate to advanced Pd user who would like know more about this real, what would you recommend? Thanks, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Introduction to elementary filter components in Pd
I don't really understand this ASCII art. If you don't mind, could you pass a patch along? Cheers, ~Brandon On Sat, Sep 11, 2010 at 6:36 PM, Mathieu Bouchard ma...@artengine.cawrote: On Sat, 11 Sep 2010, brandon zeeb wrote: Does anyone have a set of tutorials, abstractions, or are their any documents available which go into further detail into these objects? For starters, I'd like to build a few simple classic filter types for [lop~] do [*~]\[expr $f1*3.141593*2/$f2] || [rpole~]-[expr 1-$f1] where the top $f1 is the frequency and the $f2 is the sampling rate. ___ | Mathieu Bouchard -- Villeray, Montréal, QC ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] is bang~ limited to a 64 sample block?
I'd like to update biquad coefficients at the block~ size as well, to obtain smoother transitions. On Sat, Jun 20, 2009 at 11:01 AM, hard off hard@gmail.com wrote: i wanted to send a bang on a zero-crossing ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] bang~ event resolution
Hello, With regards to the block limit thread and the following previous discussion [1], I have a question regarding event timing resolution in Puredata. In the previous email thread, it was noted: What is also interesting, is that i get the double value of 2.9 msec for blocksizes above 64, for example 65 and above. There are no adc~ or dac~ objects or any subpatches in this setup. Does this mean that the resolution of a bang is in *multiples* of 1.45msec? For example: 1. If I am attempting to send a message every 8msec (5.51 dsp blocks), will the event actually be sent, rendered, and perceived to occur every 8msec or will it be rounded up to the next block ( #6 ) at 8.7msec? 2. If an event is scheduled to occur every 1.50msec, will it be scheduled in time every 1.50msec or every 2.90msec? I've read the pertinent section of Miller's Theory and Technique of Electronic Music, but I guess this is one small bit I'm still hung up on. Thanks, ~Brandon [1] - http://lists.puredata.info/pipermail/pd-list/2009-01/067255.html ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] is bang~ limited to a 64 sample block?
Any chance of having the ability to change that globally if need be? On Fri, Jun 19, 2009 at 8:30 PM, Martin Schied crini...@gmx.net wrote: hi! hard off wrote: I made a patch which times the duration between two bangs sent by [bang~]. If i set the blocksize to the default of 64, then each bang comes 1.4ms apart - as expected with 44.1khz samplerate. However, making the blocksize smaller has no effect on the duration between the bangs. Does bang~ have a speedlimit of 64 samples? If not, what is the limiting factor stopping me getting bangs more often than every 1.4ms? it's a 64 samples limit as far as i read in archives some time ago... http://lists.puredata.info/pipermail/pd-list/2002-04/006123.html Martin ___ 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] basic resonant filters in Pd
I've verified my calculations and duplicated the ggee code in a short perl script. My script and my Pd patch match, but are still off from ggee. I feel like a noob here, what's the difference? The script/patch are being compared at 100hz, bw=1, sr=48000. ~Brandon On Sun, May 17, 2009 at 9:45 PM, brandon zeeb zeeb.bran...@gmail.comwrote: Hey, I've implemented the same coefficients as the ggee [lowpass] external in Pd, and can't seem to figure out where my calculations are off. The calculations are in the [pd lowpass] sub patch. Any ideas? ~Brandon On Sun, May 17, 2009 at 2:43 PM, Frank Barknecht f...@footils.org wrote: Hallo, brandon zeeb hat gesagt: // brandon zeeb wrote: Good call! I explored the GGEE objects in Pd-extended, which led me to their source code (A+ for readability), which led me to this: http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt The filter objects in the rjdj-lib just do these calulations as pd-vanilla abstractions (no stability checks) Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list coef.pl Description: Binary data biquad lowpass coeff.pd Description: Binary data ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] GGEE [lowpass] error vs. purepd [lowpass]? was Re: basic resonant filters in Pd
Indeed, great catch. I hadn't noticed that line! On Mon, May 18, 2009 at 4:30 PM, Hans-Christoph Steiner h...@at.or.atwrote: On May 18, 2009, at 4:27 PM, Claude Heiland-Allen wrote: brandon zeeb wrote: GGEE's [lowpass] seems to be sharp by a semitone or so [1] line 68: x-x_rate = 44100.0; seems to have a hardcoded sample rate, which obviously causes problems when running at other sample rates... Nice catch. That seems like a bug, no? As far as I know Günter is missing-in-action on his code in the pure-data SVN, so it seems appropriate to me IMHO to commit fixes directly. .hc Claude [1] http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/ggee/filters/lowpass.c?view=markup ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list There is no way to peace, peace is the way. -A.J. Muste ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] GGEE [lowpass] error vs. purepd [lowpass]? was Re: basic resonant filters in Pd
Btw, this seems to be a feature of almost all of the GGEE biquad coefficient externals. Check line 67 on highpass.c, bandpass.c, equalizer.c, and so forth. I'm not sure how you would want to handle this, but keep in mind it's systemic. Cheers, ~Brandon On Mon, May 18, 2009 at 4:30 PM, Hans-Christoph Steiner h...@at.or.atwrote: On May 18, 2009, at 4:27 PM, Claude Heiland-Allen wrote: brandon zeeb wrote: GGEE's [lowpass] seems to be sharp by a semitone or so [1] line 68: x-x_rate = 44100.0; seems to have a hardcoded sample rate, which obviously causes problems when running at other sample rates... Nice catch. That seems like a bug, no? As far as I know Günter is missing-in-action on his code in the pure-data SVN, so it seems appropriate to me IMHO to commit fixes directly. .hc Claude [1] http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/ggee/filters/lowpass.c?view=markup ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list There is no way to peace, peace is the way. -A.J. Muste ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] basic resonant filters in Pd
Derek, Thanks for the complete list! This is very helpful. I was hoping to start off by using Vanilla-only objects. Does anyone have some good examples of how [biquad~] can be used to replicate standard low/high/band pass filters w/ q? Any other ideas? ~brandon On Sun, May 17, 2009 at 4:35 AM, Derek Holzer de...@umatic.nl wrote: Hi Brandon, here ya go! VANILLA PD *SIGNAL CONTROLLED* vcf~ moog~ *MESSAGE CONTROLLED* lop~ bp~ hp~ biquad PD-EXTENDED/EXTERNAL LIBRARIES *SIGNAL CONTROLLED* ---IEM Lib filters--- vcf_filter~ (building block for following abstractions) vcf_bp2~ vcf_bp4~ vcf_bp6~ vcf_bp8~ vcf_hp2~ vcf_hp4~ vcf_hp6~ vcf_hp8~ vcf_lp2~ vcf_lp4~ vcf_lp6~ vcf_lp8~ vcf_rbp2~ vcf_rbp4~ vcf_rbp6~ vcf_rbp8~ *MESSAGE CONTROLLED* ---IEM Lib filters--- filter~ (building block for following abstractions) bpq2~ bpw2~ bsq2~ hp1~ hp2~ hp2_bess~ (can go from 2-10 order) hp2_butt~ (can go from 2-10 order) hp2_cheb~ (can go from 2-10 order) hp2_crit~ (can go from 2-10 order) lp1~ lp2~ lp2_bess~ (can go from 2-10 order) lp2_butt~ (can go from 2-10 order) lp2_cheb~ (can go from 2-10 order) lp2_crit~ (can go from 2-10 order) ---GGEE--- (Generate biquad coefficients) bandpass highpass lowpass Maybe I missed some? ;-) Best! D. brandon zeeb wrote: Hallo, How does everyone implement basic resonant filters, ie: LPF, HPF, BPF, in Puredata? [lop~], [hip~], and [bp~] are nice, and can easily be strung serially to create 2nd, 3rd, and 4th order filters, but lack q. [biquad~] seems up to the task, but I'm unable to find any information in the help file or docs online pertaining to how one could replicate standard filters using this object. -- ::: derek holzer ::: http://blog.myspace.com/macumbista ::: http://www.vimeo.com/macumbista ::: ---Oblique Strategy # 164: Twist the spine ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] basic resonant filters in Pd
Good call! I explored the GGEE objects in Pd-extended, which led me to their source code (A+ for readability), which led me to this: http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt Thanks for the pointer. Cheers! ~Brandon On Sun, May 17, 2009 at 9:53 AM, Derek Holzer de...@umatic.nl wrote: I think if you Google biquad filter coefficients or similar, you'll come up with tons of Greek to play with. Otherwise, the GGEE objects merely do the calculations and export them as messages, so if you wanted to use these objects to get some reasonable sounding stuff and then build your vanilla filters based on those coefficients, the filters themselves are technically vanilla as well. best! D. brandon zeeb wrote: Derek, Thanks for the complete list! This is very helpful. I was hoping to start off by using Vanilla-only objects. Does anyone have some good examples of how [biquad~] can be used to replicate standard low/high/band pass filters w/ q? Any other ideas? ~brandon On Sun, May 17, 2009 at 4:35 AM, Derek Holzer de...@umatic.nl mailto: de...@umatic.nl wrote: Hi Brandon, here ya go! VANILLA PD *SIGNAL CONTROLLED* vcf~ moog~ *MESSAGE CONTROLLED* lop~ bp~ hp~ biquad PD-EXTENDED/EXTERNAL LIBRARIES *SIGNAL CONTROLLED* ---IEM Lib filters--- vcf_filter~ (building block for following abstractions) vcf_bp2~ vcf_bp4~ vcf_bp6~ vcf_bp8~ vcf_hp2~ vcf_hp4~ vcf_hp6~ vcf_hp8~ vcf_lp2~ vcf_lp4~ vcf_lp6~ vcf_lp8~ vcf_rbp2~ vcf_rbp4~ vcf_rbp6~ vcf_rbp8~ *MESSAGE CONTROLLED* ---IEM Lib filters--- filter~ (building block for following abstractions) bpq2~ bpw2~ bsq2~ hp1~ hp2~ hp2_bess~ (can go from 2-10 order) hp2_butt~ (can go from 2-10 order) hp2_cheb~ (can go from 2-10 order) hp2_crit~ (can go from 2-10 order) lp1~ lp2~ lp2_bess~ (can go from 2-10 order) lp2_butt~ (can go from 2-10 order) lp2_cheb~ (can go from 2-10 order) lp2_crit~ (can go from 2-10 order) ---GGEE--- (Generate biquad coefficients) bandpass highpass lowpass Maybe I missed some? ;-) Best! D. brandon zeeb wrote: Hallo, How does everyone implement basic resonant filters, ie: LPF, HPF, BPF, in Puredata? [lop~], [hip~], and [bp~] are nice, and can easily be strung serially to create 2nd, 3rd, and 4th order filters, but lack q. [biquad~] seems up to the task, but I'm unable to find any information in the help file or docs online pertaining to how one could replicate standard filters using this object. --::: derek holzer ::: http://blog.myspace.com/macumbista ::: http://www.vimeo.com/macumbista ::: ---Oblique Strategy # 164: Twist the spine -- ::: derek holzer ::: http://blog.myspace.com/macumbista ::: http://www.vimeo.com/macumbista ::: ---Oblique Strategy # 76: Give the game away ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] basic resonant filters in Pd
Hey, I've implemented the same coefficients as the ggee [lowpass] external in Pd, and can't seem to figure out where my calculations are off. The calculations are in the [pd lowpass] sub patch. Any ideas? ~Brandon On Sun, May 17, 2009 at 2:43 PM, Frank Barknecht f...@footils.org wrote: Hallo, brandon zeeb hat gesagt: // brandon zeeb wrote: Good call! I explored the GGEE objects in Pd-extended, which led me to their source code (A+ for readability), which led me to this: http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt The filter objects in the rjdj-lib just do these calulations as pd-vanilla abstractions (no stability checks) Ciao -- Frank ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list biquad lowpass coeff.pd Description: Binary data ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] basic resonant filters in Pd
Hallo, How does everyone implement basic resonant filters, ie: LPF, HPF, BPF, in Puredata? [lop~], [hip~], and [bp~] are nice, and can easily be strung serially to create 2nd, 3rd, and 4th order filters, but lack q. [biquad~] seems up to the task, but I'm unable to find any information in the help file or docs online pertaining to how one could replicate standard filters using this object. Cheers, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd-extended 0.41.4 release candidate 1
Mac OS X 10.5 i386. Has anyone else been seeing this? On Thu, May 14, 2009 at 10:52 AM, Hans-Christoph Steiner h...@at.or.atwrote: Hey, Let's keep these on list please. That's an odd one, I use that all the time on Mac OS X and Ubuntu. Which platform are you on? .hc On May 14, 2009, at 10:38 AM, brandon zeeb wrote: The toggle shortcut key is still broken, on my machine, it will put a canvas on the page instead of a toggle. ~Brandon On Wed, May 13, 2009 at 8:49 PM, Hans-Christoph Steiner h...@at.or.atwrote: Ok, so this thing is just about ready to release! Please hammer on it, report any little bug or annoyance you might find to the bug tracker! You can see some info about the included changes here: http://puredata.info/dev/NextRelease Windows and Debian/PowerPC builds coming soon http://at.or.at/hans/pd/installers.html .hc Mistrust authority - promote decentralization. - the hacker ethic ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list Using ReBirth is like trying to play an 808 with a long stick.-David Zicarelli ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd-extended 0.41.4 release candidate 1
Ok. Well, are the shortcut keys stored in a preference file? Could a previous installation of Pd be effecting my 0.41.4rc1 install? I've cleared my prefs directory... ~Brandon On Thu, May 14, 2009 at 11:40 AM, Hans-Christoph Steiner h...@at.or.atwrote: I am on the same platform. I've never .hc On May 14, 2009, at 10:56 AM, brandon zeeb wrote: Mac OS X 10.5 i386. Has anyone else been seeing this? On Thu, May 14, 2009 at 10:52 AM, Hans-Christoph Steiner h...@at.or.atwrote: Hey, Let's keep these on list please. That's an odd one, I use that all the time on Mac OS X and Ubuntu. Which platform are you on? .hc On May 14, 2009, at 10:38 AM, brandon zeeb wrote: The toggle shortcut key is still broken, on my machine, it will put a canvas on the page instead of a toggle. ~Brandon On Wed, May 13, 2009 at 8:49 PM, Hans-Christoph Steiner h...@at.or.atwrote: Ok, so this thing is just about ready to release! Please hammer on it, report any little bug or annoyance you might find to the bug tracker! You can see some info about the included changes here: http://puredata.info/dev/NextRelease Windows and Debian/PowerPC builds coming soon http://at.or.at/hans/pd/installers.html .hc Mistrust authority - promote decentralization. - the hacker ethic ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list Using ReBirth is like trying to play an 808 with a long stick.-David Zicarelli The arc of history bends towards justice. - Dr. Martin Luther King, Jr. ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd-extended 0.41.4 release candidate 1
In fact, both Shift-Cmd-T and Shift-Cmd-C create a canvas. I re-cleared my preferences directory and tried again, I can reproduce this every time. ~brandon On Thu, May 14, 2009 at 11:44 AM, brandon zeeb zeeb.bran...@gmail.comwrote: Ok. Well, are the shortcut keys stored in a preference file? Could a previous installation of Pd be effecting my 0.41.4rc1 install? I've cleared my prefs directory... ~Brandon On Thu, May 14, 2009 at 11:40 AM, Hans-Christoph Steiner h...@at.or.atwrote: I am on the same platform. I've never .hc On May 14, 2009, at 10:56 AM, brandon zeeb wrote: Mac OS X 10.5 i386. Has anyone else been seeing this? On Thu, May 14, 2009 at 10:52 AM, Hans-Christoph Steiner h...@at.or.atwrote: Hey, Let's keep these on list please. That's an odd one, I use that all the time on Mac OS X and Ubuntu. Which platform are you on? .hc On May 14, 2009, at 10:38 AM, brandon zeeb wrote: The toggle shortcut key is still broken, on my machine, it will put a canvas on the page instead of a toggle. ~Brandon On Wed, May 13, 2009 at 8:49 PM, Hans-Christoph Steiner h...@at.or.atwrote: Ok, so this thing is just about ready to release! Please hammer on it, report any little bug or annoyance you might find to the bug tracker! You can see some info about the included changes here: http://puredata.info/dev/NextRelease Windows and Debian/PowerPC builds coming soon http://at.or.at/hans/pd/installers.html .hc Mistrust authority - promote decentralization. - the hacker ethic ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list Using ReBirth is like trying to play an 808 with a long stick.-David Zicarelli The arc of history bends towards justice. - Dr. Martin Luther King, Jr. ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd-extended 0.41.4 release candidate 1
Will do. Are there any other relevant bits of information I can provide (system information, dumps, logs, etc) with the ticket to help track down this issue? ~b On Thu, May 14, 2009 at 12:00 PM, Hans-Christoph Steiner h...@at.or.atwrote: That's a very odd bug. I can't reproduce it. If you want, post a bug report to the tracker. Please include as much detail as possible. .hc On May 14, 2009, at 11:48 AM, brandon zeeb wrote: In fact, both Shift-Cmd-T and Shift-Cmd-C create a canvas. I re-cleared my preferences directory and tried again, I can reproduce this every time. ~brandon On Thu, May 14, 2009 at 11:44 AM, brandon zeeb zeeb.bran...@gmail.comwrote: Ok. Well, are the shortcut keys stored in a preference file? Could a previous installation of Pd be effecting my 0.41.4rc1 install? I've cleared my prefs directory... ~Brandon On Thu, May 14, 2009 at 11:40 AM, Hans-Christoph Steiner h...@at.or.atwrote: I am on the same platform. I've never .hc On May 14, 2009, at 10:56 AM, brandon zeeb wrote: Mac OS X 10.5 i386. Has anyone else been seeing this? On Thu, May 14, 2009 at 10:52 AM, Hans-Christoph Steiner h...@at.or.atwrote: Hey, Let's keep these on list please. That's an odd one, I use that all the time on Mac OS X and Ubuntu. Which platform are you on? .hc On May 14, 2009, at 10:38 AM, brandon zeeb wrote: The toggle shortcut key is still broken, on my machine, it will put a canvas on the page instead of a toggle. ~Brandon On Wed, May 13, 2009 at 8:49 PM, Hans-Christoph Steiner h...@at.or.atwrote: Ok, so this thing is just about ready to release! Please hammer on it, report any little bug or annoyance you might find to the bug tracker! You can see some info about the included changes here: http://puredata.info/dev/NextRelease Windows and Debian/PowerPC builds coming soon http://at.or.at/hans/pd/installers.html .hc Mistrust authority - promote decentralization. - the hacker ethic ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list Using ReBirth is like trying to play an 808 with a long stick.-David Zicarelli The arc of history bends towards justice. - Dr. Martin Luther King, Jr. Access to computers should be unlimited and total. - the hacker ethic ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] throw~/catch~ headroom
Andy, Great idea, I'll keep that in mind. You are correct, [throw~]/[catch~] does not contain a set maximum value. In the process of swapping out the cascading [+~] objects, I introduced a feature to the system which was causing the distortion. Cheers, ~Brandon On Sun, May 3, 2009 at 5:26 AM, Andy Farnell padawa...@obiwannabe.co.ukwrote: I looked for that in dsp_add() myself, but couldn't see it. On a practical note; having long suspected this while working with numbers of [throw~][catch~] buses at the mix stage it helps to introduce DC traps before every [throw~]. A solution where you have a seemingly untracable offset that messes all your [throw~][catch~] system, is to use a [delwrite~ a 1] and several [delread~ a 1] objects in place of [throw~] and [catch~] On Sat, 02 May 2009 23:49:35 -0400 Martin Peach martin.pe...@sympatico.ca wrote: brandon zeeb wrote: Hey PD-List, Has the throw~/catch~ system been designed to have a different available headroom than standard [+~] and [*~] objects? I've been designing a few polyphonic patches and have decided to use throw~/catch~ instead of hard-wiring the summing bus. I've found that when the signal approaches 1.0, distortion occurs. Has this been designed as such for a reason? Yes, [throw~] and [catch~] and all the other dsp objects can handle signals up to the limits of the float type in the c programming language. However 1.0 is designed to correspond to the highest voltage the dac in your sound card can send to your amplifier. Any sample value above 1.0 or below -1.0 will be clipped to those limits. The output of a summing bus with subsequent processing will start clipping before any individual signal actually reaches 1.0. Martin ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Use the source ___ 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
[PD] throw~/catch~ headroom
Hey PD-List, Has the throw~/catch~ system been designed to have a different available headroom than standard [+~] and [*~] objects? I've been designing a few polyphonic patches and have decided to use throw~/catch~ instead of hard-wiring the summing bus. I've found that when the signal approaches 1.0, distortion occurs. Has this been designed as such for a reason? Cheers, ~Brandon ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] better tabread4~
Excellent point, don't listen to me! :) From your example, I'm assuming you're hinting at including the ability in this abstraction to switch interpolation schemes by enabling/disabling sub-patched tabread~, tabread4~, and tabread4c~ objects via inlet messages or creation arguments. In the end, I would probably only use a tabread4c~ type object in special circumstances given tabread4~ is good enough. So whatever you decide to do I'm sure it's going to be legit (as Pd rocks). Cheers, ~Brandon On Jun 24, 2008, at 6:06 PM, IOhannes m zmoelnig wrote: hmm, i am not totally convinced (but actually don't care) as this leads to bloated objects which can just do everything and you specify what they should do via parameters. why do we have objects then? ___ Pd-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Compiling netsend~/netreceive~ on intel mac
Did you have any issue building this external on 10.4? Philip and Steffen, are you guys on 10.5? ~Brandon On Mar 31, 2008, at 11:37 AM, Hans-Christoph Steiner wrote: I added these to SVN already, if someone adds them to externals/ Makefile, then they can included in the Pd-extended builds. http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/olafmatt/netsend ~/ .hc On Mar 31, 2008, at 7:40 AM, bsoisoi wrote: Have you been able to build netsend~/netreceive~? After a few tweaks, I was able to get the full piece built. You can also grab the binaries from Hans' latest i386 OS X build: http://autobuild.puredata.info/auto-build/2008-02-22/ In order to get the two pieces to build, you'll need to augment two things. The error you're seeing below is due to your machine not being too friendly with some ASM code in the float_cast.h file. This bit of code is well above my head, but if we remove the float_cast.h optimizations, they'll build. With the snippet below, you can either place it within the Mac OS X section of float_cast.h, or delete everything and put this in it: #define HAVE_LRINT_REPLACEMENT 0 #include math.h #define lrint(dbl) ((int) (dbl)) #define lrintf(flt) ((int) (flt)) You were also correct in that you need to have the DARWININCLUDE var inside the makefile point to your pd src, like so: DARWININCLUDE = -I/Users/bz/Downloads/puredata-extended/pd/src - Iinclude Cheers, ~brandon On Mar 16, 2008, at 2:50 PM, Philip Rivera wrote: I get the exact same thing. cc -DPD -DUNIX -DMACOSX -O2 -Wall -W -Wshadow -Wno-unused -Wno-parentheses -Wno-switch -Iinclude -o netsend~.o -c netsend~.c /var/folders/3L/3LX5MRuIHOG1akXB+RYg1U+++yU/-Tmp-//ccc4rLii.s:614:no such instruction: `fctiw %st,%st' /var/folders/3L/3LX5MRuIHOG1akXB+RYg1U+++yU/-Tmp-//ccc4rLii.s:615:no such instruction: `stfd %st, -32(%ebp)' make: *** [netsend~.pd_darwin] Error 1 Steffen Juul wrote: On 16/03/2008, at 0.38, Philip Rivera wrote: I've been trying to compile Olaf Matthews netsend~ and netreceive~ objects for pd for an intel mac. Has anyone had any success with this, or has binaries already compiled. What error do you get? I can compile netreceive~ fine. Only need to alter the DARWININCLUDE variable in the makefile to point to the Pd source code, if it doesn't already. Wrt. netsend~ i get the following error: cc -DPD -DUNIX -DMACOSX -O2 -Wall -W -Wno-unused -Wno-parentheses -Wno-switch -I/My/Path/To/pd/src -Iinclude -o netsend~.o -c netsend~.c /var/tmp//cchTlZrk.s:597:no such instruction: `fctiw %st,%st' /var/tmp//cchTlZrk.s:598:no such instruction: `stfd %st,-32(%ebp)' make: *** [netsend~.pd_darwin] Error 1 ___ 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 Man has survived hitherto because he was too ignorant to know how to realize his wishes. Now that he can realize them, he must either change them, or perish.-William Carlos Williams ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD crashes on mac OSX with Jack
No problem :) On Mar 21, 2008, at 11:21 AM, pzuspann wrote: That worked...thanks, Brandon...really appreciate it... Peter - Original Message From: bsoisoi [EMAIL PROTECTED] To: pzuspann [EMAIL PROTECTED] Cc: PD-list@iem.at Sent: Thursday, March 20, 2008 7:30:06 PM Subject: Re: [PD] PD crashes on mac OSX with Jack You'll need a newer build of pd-extended. Try this one and let us know of your results: http://autobuild.puredata.info/auto-build/2008-02-22/Pd-0.40.3-extended-20080222-macosx104-i386.dmg Cheers, ~Brandon On Mar 20, 2008, at 7:09 PM, pzuspann wrote: I recently installed JackOSX and PD (via Pd-0.39.3-extended- macosx104-i386.dmg) on my new intel mac running OS X 10.5.2. PD works through portaudio when it is checked in the media menu. However, when I try and select jack, the program crashes. I'm familiar with Linux, but new to macs. I've pasted the console output below. Please help if you can! 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ () to debug. 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec(). 3/20/08 7:05:14 PM [0x0-0x70070].org.puredata.pd.wish[2565] Break on
Re: [PD] Pd sounds better than Max?
Why can't we simply have the option to turn up (or turn down!) the resolution of the objects we already have? This is considerably less complex. ~Brandon On Mar 9, 2008, at 2:08 PM, Hans-Christoph Steiner wrote: It could be, it's just a matter of someone writing the code :) That's why I proposed the 'cleansound' library. .hc On Mar 9, 2008, at 2:01 PM, bsoisoi wrote: Well, why couldn't Pd be as clean, processors are fast enough these days, and one could always crank up the sample rates of their DSP blocks. Isn't the internal resolution at least 32bit anyway (is it 64bit under any circumstances?) cheers, ~brandon On Mar 8, 2008, at 4:25 PM, Andy Farnell wrote: On Sat, 08 Mar 2008 16:08:45 -0500 marius schebella [EMAIL PROTECTED] wrote: Frank Barknecht wrote: Hallo, Andy Farnell hat gesagt: // Andy Farnell wrote: Both use the same patch (the undulating diffraction effect). It's comparable because I translated the Csound version directly to Pd, both are 64 oscillator banks and it's clear that the Csound one sparkles while the Pd one sounds a bit muddy. Csound also is known as CleanSound in some circles. so why is then pure data not equally clean? marius. Because it's optimised for real-time performance. Max/Pd strike a careful balance between for real-time capability. The amazing sound quality of Csound comes about because it was designed for offline rendering, and it got realtime by dint of increased CPU speeds. Like the difference between a 3D games engine and rendering a raytracing scene in 3DMax. In a way, it's not really a fair comparison at all, or at least we could say what did you expect?! ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Use the source ___ 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 [W]e have invented the technology to eliminate scarcity, but we are deliberately throwing it away to benefit those who profit from scarcity.-John Gilmore ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] parallel processing
More specifically, my question is: How does PD's performance scale when the number of available processing units increases from 2 to 4 and to 8 cores? Is the main engine written in such a way as to take advantage of this, or is it primarily a single-threaded? Possible scenarios could be: 1. I have a patch with 8 very intense sub patches. Do all of these sub-patches run on the same core or are they spread out across available processors? 2. Assume I have an 8 CPU system (dual quad opterons etc). I have 8 patches open within one Pd instance, do all 8 patches run on the same core or 2, or do they spread out across all the available 8 cores? Besides running multiple copies of Pd, how does Pd scale on many-cpu systems? Cheers, ~Brandon On Mar 4, 2008, at 11:53 AM, marius schebella wrote: pd is only using one of 2, 4 or 8. is that what your question was? marius. bsoisoi wrote: Along with the question posed by Marius, how does PD currently scale on SMP systems with 2, 4, or 8 cores? Cheers, ~Brandon On Mar 4, 2008, at 11:39 AM, marius schebella wrote: No, I missed LAC, but it is not surprising that people research in that direction. I was looking through some papers yesterday, but not the one from jürgen, will catch up on that. marius. Andrée Préfontaine wrote: Le 08-03-04 à 11:14, marius schebella a écrit : hi, I am reading an old interview with james moorer (with curtis roads in CMJ/6 1982). one funny thing is that he says, 'software synthesis is either dead or dying[...] I am hoping it's demise will be quick and relatively painless.' in return he predicted all computation being done on special dsp chips. in part he was right, but on the other hand the main cpu got more than fast enough to survive (gfx is slightly different), but - and I am coming to my point - he also was thinking about hundreds or thousands of parallel processing elements. right now, we are going to have several and in the future many many parallel CPUs, and the need for parallel processing is back. miller was talking about that in montreal. so I wonder how pd will survive that evolution? afaik the current situation is poor in this regard. can anyone give an outview for the future? would it be a jump from pd (I) 0.43 to pd II 0.1? marius. Where you at Lac 2008? because Jürgen Reuter gave a lecture on the topic with who you are interested. I do wonder too in this regard and where very interested in his presentation : exploiting multi-core architectures for fast modular synthesis Andrée ___ 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 ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] parallel processing
Perfect, thanks a bunch Claude. So, back to the first message from Marius, what are we going to do about this? I regret that I have not yet mastered parallel programming, but would be game to help out in any way possible (even QA/testing if need be). ~Brandon On Mar 4, 2008, at 2:38 PM, Claude Heiland-Allen wrote: Brandon Zeeb wrote: More specifically, my question is: How does PD's performance scale when the number of available processing units increases from 2 to 4 and to 8 cores? Is the main engine written in such a way as to take advantage of this, or is it primarily a single-threaded? Pd's engine is a single thread, it will use at most 100% of *one* core. Pd's gui is a single thread, it will use at most 100% of *one* core. The communication between engine -- gui is suboptimal, which might limit things, but unlikely. Besides running multiple copies of Pd, how does Pd scale on many- cpu systems? It doesn't. Claude -- http://claudiusmaximus.goto10.org ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd-0.40.3-extended-20080221-macosx104-i386.dmg
Cool, that's good to know. I'll try again this week, and attempt to score all packages but libsndfile1. (I may have this Fink configuration backed up). As for Tcl/tk on 10.5, should I upgrade to 8.4.18, 8.5.1, or stick with what I have standard? By the way, thanks a bunch for building extended for Mac/Intel. Thanks a bunch guys. Cheers, ~Brandon On Feb 23, 2008, at 10:31 PM, Hans-Christoph Steiner wrote: Hey, I think this is of general interest and useful to have in the archives, so I am cc'ing the list. The unstable stuff can be a little dodgy, but if the only thing that's missing is libsndfile1, I think everything should build ok. AFAIK, [sndfiler] and/or [readanysf~] are not automatically included in the build, and they are the only ones that need libsndfile1. As for the Pd-0.40.3-extended-20080221-macosx104-i386.dmg, I built that on my laptop, which is running 10.4.11. .hc On Feb 23, 2008, at 5:33 PM, Brandon Zeeb wrote: Excellent. However, I can't get passed the last few unstable dependencies, I ALWAYS get this error: Failed: Internal error: node for ptex-nox-base already exists This must be a Fink issue on 10.5, I've tried using other packages (ie: tetex-nox-base) but get the same error. I've been working on this all week, anybody have a better experience? The following dependencies are in the stable group for 10.5: flac flac-shlibs libsndfile1 libsndfile1-shlibs libogg libogg- shlibs libvorbis0 libvorbis0-shlibs libtiff libtiff-shlibs graphviz pcre pcre-shlibs lua51 lua51-dev ladspa ladspa-dev lame-dev lame- shlibs (Note: libsndfile1 above is the only dependency which won't compile as unstable) The following are unstable: fftw3 fftw3-shlibs liblo0 liblo0-shlibs ffmpeg ffmpeg-dev libavcodec1-dev libavcodec1-shlibs libdv4 libdv4-shlibs speex3 speex3-shlibs One of two scenarios always occur: 1. I can build all the dependencies as unstable, and not get the error above, but then libsndfile1 won't compile. 2. Failed: Internal error: node for ptex-nox-base already exists Maybe there is a secret combination of steps one could take to get the full kit to build, but I haven't found it yet. I'm running Fink 0.28.11, which you can get from Fink's sourceforge page.' Hans, did you build the Pd-extended below on 10.4? Cheers, ~brandon On Feb 23, 2008, at 4:48 PM, Hans-Christoph Steiner wrote: 8.4.18. You can use [tcl_version] to find out what version is being used. .hc On Feb 22, 2008, at 7:29 PM, bsoisoi wrote: Sweet! Thanks again, Hans! Is this build compiled against Tcl/Tk 8.4.10? ~bsoisoi On Feb 22, 2008, at 3:33 PM, Hans-Christoph Steiner wrote: I created another one, since I was using the old Tcl/Tk which causes crashed on Leopard. Also, the rsync wasn't automatically updating for the autobuilds, so this should have the changes from the past week: http://autobuild.puredata.info/auto-build/2008-02-22/Pd-0.40.3- extended-20080222-macosx104-i386.dmg Soon, we hope to have Leopard builds, thanks to bsoisoi! :) .hc On Feb 22, 2008, at 12:01 PM, Jack wrote: Excellent for Intel users ! ++ Jack Le 22 févr. 08 à 05:36, Hans-Christoph Steiner a écrit : I manually built on Mac OS X/Intel if anyone is interested: http://autobuild.puredata.info/auto-build/2008-02-21/Pd-0.40.3- extended-20080221-macosx104-i386.dmg .hc - --- http://at.or.at/hans/ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http:// lists.puredata.info/ listinfo/pd-list All mankind is of one author, and is one volume; when one man dies, one chapter is not torn out of the book, but translated into a better language; and every chapter must be so translated -John Donne ___ 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 If you are not part of the solution, you are part of the problem. Using ReBirth is like trying to play an 808 with a long stick.- David Zicarelli ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] autobuilds using svn
I'm using that, actually, and flac from darwinports. At this point, the builds fail at g_canvas.c... I can't even get Millers Pd to build yet. By the way, how does one get Miller's Pd packaged into a application bundle? ~Brandon On Feb 15, 2008, at 2:39 PM, Hans-Christoph Steiner wrote: Well, one thing that should make it easier is that Pd-extended uses jackosx.com's package rather than the fink package. It's already built for 10.5. Ultimately, it would be good to switch to the Fink version since it would then be automatically included into the Pd- extended.app, but that can come later. .hc On Feb 15, 2008, at 11:05 AM, bsoisoi wrote: Hi David, Have you had any success installing all of pd-extended's dependencies? It appears a bug in Fink is preventing me from installing Jack and Flac. Let me know of your progress, we should collaborate and hopefully get this done quicker. Peace, ~Brandon On Feb 15, 2008, at 10:11 AM, David Plans Casal wrote: ah, nevermind ;-) d On 15 Feb 2008, at 13:06, bsoisoi wrote: Hi Guys, I'll have the Pd-extended intel builds back online within the next week or so, assuming the few remaining dependencies can be built appropriately for 10.5 (flac and jack).I too am really looking forward to having the intel builds back as well. Frankly, this box is practically brand new, we can use this box until it croaks. It is not being used for anything else at the moment. Cheers, ~Brandon On Feb 14, 2008, at 7:05 PM, Hans-Christoph Steiner wrote: No, there is no Intel Mac any more. The one that was being used got repurposed. bsoisoi is working on getting a 10.5/Leopard box running to host nightly builds. .hc On Feb 14, 2008, at 6:52 PM, marius schebella wrote: great, did you set up the intel mac, too? marius. Hans-Christoph Steiner wrote: I switching the autobuilds to slurp from SVN. Let's hope things run smoothly tonight, then we'll have up-to-date nightly builds again. Also, I ran updates on all of the GNU/Linux boxes. .hc - --- [W]e have invented the technology to eliminate scarcity, but we are deliberately throwing it away to benefit those who profit from scarcity.-John Gilmore ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http:// lists.puredata.info/ listinfo/pd-list ¡El pueblo unido jamás será vencido! ___ 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 ___ 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 Looking at things from a more basic level, you can come up with a more direct solution... It may sound small in theory, but it in practice, it can change entire economies. - Amy Smith ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] overall horrible performance in OS X
About the iTunes EQ, that is really funny. I just profiled PD while running the example patch, and you're right (see example 1 below). Using Instruments showed similar results, + a _lot_ of time spent microsleeping. Do you find that the CPU load scales well in large patches, disregarding the 10% overhead? --Example 1--: # Report 0 - Session 2 - Time Profile of pd.mshark - Time Profile of pd SharkProfileViewer # Generated from the visible portion of the outline view - 13.5% DspFuncOrgEQ::_EQBoth(float*, float*, unsigned long, unsigned long) (com.apple.driver.DspFuncLib) - 8.8% ml_set_interrupts_enabled (mach_kernel) - 6.8% SInt32ToFloat32 (com.apple.driver.AppleHDA) 2.6% lo_mach_scall (mach_kernel) - 2.3% DspFuncDRC::_dynamicRangeControl(float*, float*, unsigned long, unsigned long) (com.apple.driver.DspFuncLib) - 1.8% tabread4_tilde_perform (pd) - 1.4% __spin_lock (commpage [libSystem.B.dylib]) - 1.3% DspFuncCrossover::processWithSpecificBuff(float*, unsigned long) (com.apple.driver.DspFuncLib) - 1.3% AUGenericOutputEntry (CoreAudio) - 1.1% mutex_lock (mach_kernel) - 1.1% iokit_user_client_trap (mach_kernel) - 1.0% DspFuncOrgEQ::_equalizer(float*, float*, unsigned long) (com.apple.driver.DspFuncLib) - 1.0% DspFuncVolume::process(unsigned long, unsigned long) (com.apple.driver.DspFuncLib) - 1.0% __memcpy (commpage [libSystem.B.dylib]) - 0.9% OSMetaClassBase::safeMetaCast(OSMetaClassBase const*, OSMetaC On Feb 4, 2008, at 12:56 PM, chris clepper wrote: On Feb 4, 2008 11:16 AM, bsoisoi [EMAIL PROTECTED] wrote: I've attached an example patch sample-test-01.pd and it's dependencies. On my dual core 2.4ghz Macbook Pro (4gb ram, 10.5.1, pd extended 40.3-2007-12-07), I hit 21-27% cpu load On the Macbook 'Pro' 1.83 I have here the CPU time is never above 10% and all of that time is spent in the driver - I bet you didn't know the Apple drivers always apply the iTunes graphic EQ effect to the output did you? Your problem might be simply having the latest Macbook with its unbelievably shitty drivers. The Apple written drivers have gotten really bad lately - try to stick with ATI GPUs just to avoid Apple's in house Nvidia drivers for example. The wireless drops connections with perfect reception and the audio sucks a lot of CPU pointlessly. Maybe use Bootcamp for Pd? ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] vline~ question
Ahh, okay. RIght, but if you scheduled that last message at 1800 instead of 59000 it would interrupt the full motion of the previous item. I was looking at these messages from the perspective of classic envelope generators (for example, the 'time varying' envelopes on the Roland XP-50/60/80 series for example, which are simply a set of volume points with associated slide times). So I get it now. The example below is a good one, hard off. If I were to make that envelope on the XP-50, for example, I would need a point in between to setup the long delay between 2000 and 59000, and would look something like this: [0, 1 1000, 0 500 2000, 0 57000 2000, 7000 6 59000( Thanks a bunch, ~brandon On Jan 26, 2008, at 1:10 PM, hard off wrote: [0, 1 1000, 0 500 2000, 7000 6 59000( | [vline~] = start at zero, ramp to 1 over a 1000ms period, ramp down to zero in 500ms, 2000ms after initial bang, ramp up to 7000 in 6ms, 59000ms after inital bang nothing gets 'cut off'..the 3rd digit just schedules a delay from initial bang. ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Mac OS X Intel autobuilds
Awesome, thanks for the info. I'll take a look at it this weekend. Should I forward any subsequent issues on this topic (ie: Pd on 10.5 and universal binaries) to the pd-dev list, or this one? I'll let you all know when I have the builds going. Cheers, ~Brandon On Jan 25, 2008, at 5:05 PM, Hans-Christoph Steiner wrote: Cool. It's not too hard to setup, here's how. First use rsync to get the code: http://puredata.info/docs/developer/GettingPdSource Then install all the dependencies: http://puredata.info/docs/developer/darwin Then add the script to a cron job so it runs automatically: pure-data/scripts/auto-build/pd-extended-auto-builder.sh Universal builds for Pd-extended won't work, but it wouldn't be too hard to get working, and very much a worthwhile project. .hc On Jan 25, 2008, at 2:11 PM, bsoisoi wrote: I have a 1.5ghz powerbook G4 with 2gb of RAM that is acting as a server for me right now. It is running 10.5.1, and I'm pretty sure powerpc macs can build Universal Binary / Intel binaries. If someone can figure that out (or help me figure it out) I can donate dedicated CPU time on this machine for nightly Pd-extended PPC/Intel autobuilds. Let me know, ~Brandon On Jan 23, 2008, at 1:31 AM, Hans-Christoph Steiner wrote: I don't think anyone has done a 10.5 build or a universal build yet. If someone wants to tackle that, then we can just have universal builds every night on whatever machine AFAIK. .hc On Jan 20, 2008, at 11:28 PM, vade wrote: What machine is it hans/marius? Perhaps we can set aside an intel box for um, us researchers and we can leave it on :) Since I am probably around more than Hans is I can check on it periodically. I believe PPC systems can compile intel builds, with 10.5, no (im not positive but I think you can target them??)? If so, we may have a spare machine for this at Poly we can put in the research area that no one will mess with... On Jan 20, 2008, at 10:20 PM, marius schebella wrote: jan 17 has one. the reason why the machine is down isvery trivial. the autobuild process was set up on a school machine which is in daily use by students and good students turn off the machine during night. Afaik the machines got totally reset for the beginning of the new semester (starting with jan22). don't know if it will be up again. hans? marius. bsoisoi wrote: Hello everyone, Is there a reason there hasn't been an autobuild for Mac OS X x86 since around 2007-12-07? Do we know when we can expect the Intel builds to resume? Thanks, ~Brandon ___ 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 ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of everyone, and the receiver cannot dispossess himself of it.- Thomas Jefferson ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list kill your television ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd-0.40.3-extended and Pd-0.39.3-extended on 10.5 Leopard
I second that. It runs fine on OS X 10.5.1. Good work, Hans. Thanks for the quick response. btw, to all Pd devs, you all are doing a great job. ~Brandon On Nov 17, 2007, at 12:26 PM, marius schebella wrote: good job! first of all: no crash with the help menu and no crash on saving... thanks a lot. marius. Hans-Christoph Steiner wrote: It built: http://autobuild.puredata.info/auto-build/2007-11-17/ .hc On Nov 16, 2007, at 4:03 PM, bsoisoi wrote: Hans et al., Great! Ping me (or the board) when the new enhancements are built, and I'll test it out for you. Thanks a bunch, ~Brandon On Friday, November 16, 2007, at 03:46PM, Hans-Christoph Steiner [EMAIL PROTECTED] wrote: Miller's Pd doesn't have the Help menu enhancements, and it uses the built-in version of Tcl/Tk, which is quite a bit slower. .hc On Nov 16, 2007, at 2:09 PM, marius schebella wrote: that sounds promising. I don't want to say this loud, but I had to switch to max to do some work that needs to get done immediately. (the problem is more related to Gem) at least I will be able to write good documentation about the differences betw. gem/jitter pd/ max and maybe think about translators for the future. Is miller's pd using another tcl/tk version than pd-extended? marius. Hans-Christoph Steiner wrote: I am in the process of upgrading the Tcl/Tk version for the nightly builds. I should have it done today, so tomorrow's build should include it. The new version of Tcl/Tk is supposed to address some of these crashes (I think they are related to Apple changing somethings in the push to make everything 64-bit, but I could be wrong). Please let me know whether this works for all y'all early adopters :) .hc On Nov 16, 2007, at 9:03 AM, Si Mills wrote: Hi Apple released 10.5.1 update today and it was hoped that it might solve this issue, but it doesn't seem to be any different. hopefully this will be rectified soon! thanks On 16 Nov 2007, at 13:07, bsoisoi wrote: Hey all, is anyone else having difficulties running either version of Pd- extended on OS X 10.5 Leopard? Whenever I hit the Help menu item, the whole program crashes. After this point, I am no longer able to save files, as the program will then crash upon save. I wouldn't be surprised if this is a leopard issue, has anyone had any luck getting around it? I've attached my crashlog. pdcrashlog.txt Thanks, ~Brandon___ 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 - --- All information should be free. - the hacker ethic ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list News is what people want to keep hidden and everything else is publicity. - Bill Moyers ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list News is what people want to keep hidden and everything else is publicity. - Bill Moyers ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list