Re: [PD] No loadbang in dynamically created objects

2011-08-20 Thread brandon zeeb
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 wrote:

> 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


[PD] No loadbang in dynamically created objects

2011-08-20 Thread brandon zeeb
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] timing

2010-12-22 Thread brandon zeeb
My fault, you're right.  I'm happily wrong about this one.

Cheers,
Brandon

On Dec 22, 2010 9:52 AM, "Roman Haefeli"  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] timing

2010-12-22 Thread brandon zeeb
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] PD OOP?

2010-12-15 Thread brandon zeeb
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  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 * wrote:
>
>
> From: brandon zeeb 
> Subject: Re: [PD] PD OOP?
> To: "Mathieu Bouchard" 
> Cc: "PD List" 
> Date: Thursday, December 16, 2010, 1:45 AM
>
>
> On Wed, Dec 15, 2010 at 6:49 PM, Mathieu Bouchard 
> http://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] PD OOP?

2010-12-15 Thread brandon zeeb
On Wed, Dec 15, 2010 at 6:49 PM, Mathieu Bouchard 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
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] PD OOP?

2010-12-15 Thread brandon zeeb
Sorry, gmail is hacking up the comment log.  Comments are inline.

On Wed, Dec 15, 2010 at 11:52 AM, Mathieu Bouchard wrote:

> 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?

2010-12-15 Thread brandon zeeb
Agreed.  By "everything" I should have been more precise:

   1. tables
   2. ui elements
   3. values
   4. send/receive
   5. throw/catch
   6. I'm probably forgetting something...

All of the above are available globally within a given patch without some
kind of namespacing (either with $0 or some eventual derivative thereof).

In a scalable Pd patch, this makes up most of the communication in a given
patch.  You are right, when something must be local, a patch cord is most
appropriate.

Cheers,
~Brandon

On Wed, Dec 15, 2010 at 10:36 AM, Mathieu Bouchard wrote:

> On Wed, 15 Dec 2010, IOhannes m zmoelnig wrote:
>
>> 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.
>>
>
> A patchcord by itself is also pretty local. Think of it as some kind of
> function-pointer (or rather, inlet-pointer).
>
>
>  ___
> | Mathieu Bouchard  tél: +1.514.383.3801  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] PD OOP?

2010-12-15 Thread brandon zeeb
#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

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.

2. No control over abstraction (object) construction order and lifecycle

In a given abstraction you do NOT have control of the order in which your
abstractions are created in memory.  With my attempt at the Flyweight
pattern for large lookup tables, it became apparent that if I were to remove
an abstraction while editing a patch, I would have no idea if I removed the
abstraction with reference to the real table or not.  This is almost similar
to prototypal inheritance where the instantiated object controls the
resource, not the prototype.  For example, a given UI on an Android phone
widget will usually share graphic resources with others of it's type to save
memory.

IMHO, directing your criticism at pd-vanilla alone is extremely
unproductive. You have to accept the fact that doing real work in Pd may
require a lot of externals. It's sad, but it's like that. I wouldn't use Pd
if it didn't have externals.

I care more about Pd as a language and as a means to learn. For my purposes,
using externals is pointless, although I do appreciate all the hard work.

#5. No interfaces or abstract abstractions (to control inlet patterns)

I would like to know which inlets of a given abstraction are signals and
which are events for the purpose of dynamic patching / autowiring.  Bonus
points if inlet metadata is available.

With a bit of introspection, one could determine the name of the inlet, and
thus autowire (dynamically patch) it to the correct binding (binding in my
library, u_dispatch in RjDj).  I work around this by enforcing a strict
interface (as with RjDj) of two event inlets (hot and cold) where the cold
inlet receives binding (dispatch) events.  ~ objects just prepend signal
inlets to the hot-side.

Please first give an example of a useful use of the FlyweightPattern.

Any given abstraction that requires a large lookup table obtains a reference
(ie: the table name) of this large table without having to construct it by
itself, it doesn't know how to create it, it just receives it... but every
abstraction that requires this table receives the same one.  This is much
like a singleton.  Otherwise it's a complete waste of resources.

 6. Unfriendly and inconsistent type system (it is cumbersome in real use,
> although I get over this by using [list])
>

I once proposed alternate versions of [unpack], [select], etc., that had no
type restrictions. There was a discussion on it. See :

That would be great.  In my uses I don't really need a [unpack a a a],
usually by the time I reach a [pack] I already have a strong enough
determination of what types I'm working with (my binding/dispatch is
type-agnostic though), but it would be nice.

Is this just ONE kind of InversionOfControl (IoC) ? I'd guess that there are
several quite different manners of doing that in Pd, no ? But I have trouble
reading definitions and tutorials of IoC. I probably have used a bunch of
different IoC techniques in Pd and other languages already.

Basically, an abstraction (or object) is given what it needs to function by
a 3rd party.  The abstraction in question only focuses on it's given task
and doesn't know how to create it's dependencies.  For testability and
reusability, this is a fantastic pattern.  So far I've been using
constructor IoC (in creation arguments), but one could just as easily pass
this information as a list to an abstraction's inlet.  Max's [poly] and
RjDj's u_makepoly~ objects are a very simple example of this.

If you look at the structure of any given synthesizer voice in Pd, I'm sure
you can think of other useful examples of this.

Cheers,
~Brandon


On Wed, Dec 15, 2010 at 10:23 AM, Mathieu Bouchard wrote:

> On Wed, 15 Dec 2010, brandon zeeb wrote:
>
>   2. No control over abstraction (object) construction order and lifecycle
>>
>
> What's that ?
>
>   3. No introspection (although not required, very helpful, and don't tell
>> me it's in some external, I don't care!)
>>
>
> Why do you don't care about externals that might do the job ???
>
> IMHO, directing your criticism at pd-vanilla alone is extremely
> unproductive. You have to accept the fact that doing real work in Pd may
> require a lot of externals. It's sad, but it's like that. I wouldn't use Pd
> if it didn't have externals.
>
>   5. No interfaces or abstract abstractions (to control in

Re: [PD] PD OOP?

2010-12-15 Thread brandon zeeb
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 wrote:

> 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?

2010-12-15 Thread brandon zeeb
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  wrote:

> What exactly would "this" (#4) look like in Pd?
>
> -Jonathan
>
> --- On *Wed, 12/15/10, brandon zeeb * wrote:
>
>
> From: brandon zeeb 
>
> Subject: Re: [PD] PD OOP?
> To: "PD List" 
> 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?

2010-12-15 Thread brandon zeeb
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] if within a range of numbers then true

2010-11-22 Thread brandon zeeb
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  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~

2010-11-03 Thread brandon zeeb
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 wrote:

>
>  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

2010-11-02 Thread brandon zeeb
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  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  wrote:
> > This is pretty easy actually, I use such things mostly to guide my
> > rhythmical quantization...
> >
> > On 2 November 2010 19:19, brandon zeeb  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] Non-Linear Quantization / Bitcrush

2010-11-02 Thread brandon zeeb
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
<>

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

2010-11-02 Thread brandon zeeb
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  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  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
<>

my-crush.pd
Description: Binary data
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


[PD] Non-Linear Quantization / Bitcrush

2010-11-01 Thread brandon zeeb
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] Pd 20% idle CPU usage on MBP

2010-11-01 Thread brandon zeeb
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  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


Re: [PD] dub chords in Pd

2010-10-29 Thread brandon zeeb
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  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] Pd 20% idle CPU usage on MBP

2010-10-28 Thread brandon zeeb
Seriously, use Jack, and watch the CPU usage drop significantly.

On Thu, Oct 28, 2010 at 1:06 PM, Bernardo Barros
wrote:

> 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 :
> > 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] Pd 20% idle CPU usage on MBP

2010-10-28 Thread brandon zeeb
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  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 :
> > 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] dub chords in Pd

2010-10-28 Thread brandon zeeb
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  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 
>> Subject: Re: [PD] dub chords in Pd
>> To: PD List 
>> Message-ID:
>>
>> 
>> >
>> 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] dub chords in Pd

2010-10-27 Thread brandon zeeb
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 wrote:

> 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 
>> 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?

2010-10-26 Thread brandon zeeb
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


Re: [PD] namecanvas obsolete? Why? Re: Dynamic Graph on Parent

2010-09-30 Thread brandon zeeb
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 wrote:

> 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

2010-09-30 Thread brandon zeeb
Sorry, that last example should read:
[clear(
|
|
[s $!]

On Thu, Sep 30, 2010 at 1:42 PM, brandon zeeb wrote:

> 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 wrote:
>
>> 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] biquad equation for vcf~?

2010-09-30 Thread brandon zeeb
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  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

2010-09-30 Thread brandon zeeb
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 wrote:

> 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] namecanvas obsolete? Why? Re: Dynamic Graph on Parent

2010-09-30 Thread brandon zeeb
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 wrote:
>
> 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

2010-09-30 Thread brandon zeeb
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 wrote:

> 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


[PD] namecanvas obsolete? Why? Re: Dynamic Graph on Parent

2010-09-30 Thread brandon zeeb
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 wrote:

> 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 wrote:
>
>> 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 * wrote:
>>
>>
>> From: brandon zeeb 
>> Subject: Re: [PD] Dynamic Graph on Parent
>>
>> To: "PD List" 
>> 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 
>> http://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 
>> http://mc/compose?to=zeeb.bran...@gmail.com>
>> >* wrote:
>>
>>
>> From: brandon zeeb 
>> http://mc/compose?to=zeeb.bran...@gmail.com>
>> >
>> Subject: [PD] Dynamic Graph on Parent
>> To: "PD List" 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] Dynamic Graph on Parent

2010-09-29 Thread brandon zeeb
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 wrote:

> 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 * wrote:
>
>
> From: brandon zeeb 
> Subject: Re: [PD] Dynamic Graph on Parent
>
> To: "PD List" 
> 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 
> http://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 
> http://mc/compose?to=zeeb.bran...@gmail.com>
> >* wrote:
>
>
> From: brandon zeeb 
> http://mc/compose?to=zeeb.bran...@gmail.com>
> >
> Subject: [PD] Dynamic Graph on Parent
> To: "PD List" 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] Dynamic Graph on Parent

2010-09-29 Thread brandon zeeb
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  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 * wrote:
>
>
> From: brandon zeeb 
> Subject: [PD] Dynamic Graph on Parent
> To: "PD List" 
> 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


[PD] Outdated Tutorials on Puredata.info

2010-09-29 Thread brandon zeeb
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


[PD] Dynamic Graph on Parent

2010-09-29 Thread brandon zeeb
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


Re: [PD] Introduction to elementary filter components in Pd

2010-09-11 Thread brandon zeeb
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 wrote:

> 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


[PD] Introduction to elementary filter components in Pd

2010-09-11 Thread brandon zeeb
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


[PD] bang~ event resolution

2009-06-20 Thread brandon zeeb
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?

2009-06-20 Thread brandon zeeb
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  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


Re: [PD] is bang~ limited to a 64 sample block?

2009-06-19 Thread brandon zeeb
Any chance of having the ability to change that globally if need be?

On Fri, Jun 19, 2009 at 8:30 PM, Martin Schied  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] GGEE [lowpass] error vs. purepd [lowpass]? was Re: basic resonant filters in Pd

2009-05-18 Thread brandon zeeb
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 wrote:

>
> 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

2009-05-18 Thread brandon zeeb
Indeed, great catch.  I hadn't noticed that line!

On Mon, May 18, 2009 at 4:30 PM, Hans-Christoph Steiner wrote:

>
> 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

2009-05-18 Thread brandon zeeb
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 wrote:

> 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  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] basic resonant filters in Pd

2009-05-17 Thread brandon zeeb
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  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


Re: [PD] basic resonant filters in Pd

2009-05-17 Thread brandon zeeb
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  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>> 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

2009-05-17 Thread brandon zeeb
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  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


[PD] basic resonant filters in Pd

2009-05-16 Thread brandon zeeb
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

2009-05-14 Thread brandon zeeb
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 wrote:

>
> 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 wrote:
>
>> 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 
>> wrote:
>>
>>>
>>> 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 
>>> wrote:
>>>
>>>>
>>>> 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 
>>>> wrote:
>>>>
>>>>>
>>>>> 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] Pd-extended 0.41.4 release candidate 1

2009-05-14 Thread brandon zeeb
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 wrote:

> 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 wrote:
>
>>
>> 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 
>> wrote:
>>
>>>
>>> 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 
>>> wrote:
>>>
>>>>
>>>> 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

2009-05-14 Thread brandon zeeb
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 wrote:

>
> 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 wrote:
>
>>
>> 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 wrote:
>>
>>>
>>> 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

2009-05-14 Thread brandon zeeb
Mac OS X 10.5 i386.  Has anyone else been seeing this?


On Thu, May 14, 2009 at 10:52 AM, Hans-Christoph Steiner wrote:

>
> 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 wrote:
>
>>
>> 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] throw~/catch~ headroom

2009-05-03 Thread brandon zeeb
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 wrote:

>
>
> 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  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

2009-05-02 Thread brandon zeeb
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] tabwrite~ index parameter

2008-11-20 Thread Brandon Zeeb
Chris,

I think I might have something here you can spring-board from.  I'll  
pass it to the list later today, after I clean up some things.

~Brandon


On Nov 17, 2008, at 5:28 AM, Chris McCormick wrote:

> On Sat, Nov 15, 2008 at 02:26:46PM -0500, bsoisoi wrote:
>> Why isn't tabwrite~ able to accept an index inlet (like [tabwrite])  
>> at
>> audio rate?  I'm looking to make a tape-loop emulation patch, but its
>> not seeming as straight forward as I would have hoped.  Am I missing
>> something, or would there be another way of going about this?
>
> On this topic, does anyone know of a nice already-built abstraction  
> that
> does tape loop emulation? I am talking about modelling classic dub
> tape-loop delays, or something like that.
>
> Chris.
>
> ---
> http://mccormick.cx


___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list


Re: [PD] better tabread4~

2008-06-24 Thread Brandon Zeeb
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

2008-03-31 Thread Brandon Zeeb
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 
>> #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

2008-03-21 Thread Brandon Zeeb
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]

Re: [PD] Pd sounds better than Max?

2008-03-09 Thread Brandon Zeeb
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

2008-03-04 Thread Brandon Zeeb
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] parallel processing

2008-03-04 Thread Brandon Zeeb
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] Pd-0.40.3-extended-20080221-macosx104-i386.dmg

2008-02-24 Thread Brandon Zeeb
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

2008-02-15 Thread brandon zeeb
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

2008-02-04 Thread brandon zeeb
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

2008-01-26 Thread brandon zeeb
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

2008-01-25 Thread brandon zeeb
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

2007-11-17 Thread brandon zeeb
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.

 



 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