Re: [PD] SOLVED!!! Re: pitch to voltage SOLVED!!!

2014-04-29 Thread Phil Stone
That is certainly true with bass (electric or upright) as well. (I'm 
watching this discussion with fascination!)



Phil


On 4/29/14, 12:10 PM, katja wrote:

Hi Simon,

I'd be curious to see this adaptive filtering work in practice. Could
you share a patch, once you have that working? Vocals mostly don't
exceed a 3 octave range either. Only thing is, in vocals the strongest
component is sometimes not the first harmonic but the second, when
speaking or singing the lowest notes in the range.

Katja

On Tue, Apr 29, 2014 at 7:58 PM, Simon Iten itensi...@gmail.com wrote:

katja,

exactly! i filter the input based on the output of the pitch detection. i used 
this for quite some time with my doublebass (but with a pickup per string) and 
it works perfectly. i get no octave jumps or glitches at all. the version i 
shared here is planned to be used for vocals, i have to see if it works as good…

the trick is not to filter too much in order to “let through” new notes but 
enough to filter out strong overtones (mainly octaves). it also helps to have 
filters in parallel. and of course you cut the range before that in order to 
fit your input.
on a bass string this is very easy since on a double-bass you have a 3 octave 
range per string you can cut many frequencies before even starting filtering.

this is how i did it and it worked.

i adapted this system from the gr300 also. there it’s even easier. just two 
filters per string. one in the lower section (0-7th fret and one from 7-22 
fret) they get switched via transistors based on the output voltage of the p/v 
circuit. they are 2nd order bandpass filters.

cheers, simon



On 29 Apr 2014, at 19:37, katja katjavet...@gmail.com wrote:


Hi Simon,

See attachment for an upsampled version. I used a 6th order lo pass
filter with cut off at 1/4 of the original sampling rate. This seems
to work with max. 8 times upsampling. Period length error is then
limited to 1/8 sample.

You mentioned adaptive filtering of a real life input signal. Are you
planning to control filter cut off frequency with the pitch detection
result? Did you already try that? I wonder how that could work at all,
because the pitch result comes only after the adaptive filter.

Katja

On Tue, Apr 29, 2014 at 3:44 PM, Simon Iten itensi...@gmail.com wrote:

Katja thanks for your Inputs! Will Look at the Patch tonight. Simple lowpass 
Filtering? I tried to upsample with a Block object but the biquad object 
stopped outputting Pulses. If you don't mind doing a Version with upsampling 
that would be fantastic.

Well i just copied from the Gr300 schematic, so no credits for me :)

Am 29.04.2014 um 13:12 schrieb katja katjavet...@gmail.com:


Hi Simon,

So your method counts samples per (zero-crossing) cycle, is what I
learned from studying the patch. Very nice how you do this with tilde
objects. It seems possible to get equivalent result with only one
[rpole~], when using the positive pulse as trigger for [samphold~] and
with two samples delay for [rpole~]. You get the integrator's maximum
everytime. See attached patch.

Of course it still counts integer number of samples. Upsampling would
indeed improve accuracy. An upsampled signal needs filtering to remove
spectral images, did you try that?

Katja

On Tue, Apr 29, 2014 at 8:10 AM, simon itensi...@gmail.com wrote:

nice changes with expr~ ! but i think you missed the point of the beginning
of the patch. read in my first e-mail for an explanation of what this patch
does exactly. it is an gr300 analog guitar synthesizer clone (well one voice
of it). it is intended for real-life signals so there needs to be an
adaptive filter in the beginning (with the pitch info we get from the two
rpole~
objects) and the signal needs to be squared to get the longest possible
sustain (envelope is re added later obviously). also i think response is
faster when squared, or not?

thanks for the changes, greatly appreciated!

simon

Well i know exactly what the Patch does... I just dont know why the two
numbers before the Addition Need to be -1 And -2 :-)

Will Look at your Version asap.

Cheers

Am 29.04.2014 um 02:00 schrieb Alexandre Torres Porres por...@gmail.com:

I have no idea what the patch is doing either, but I was able to clean it a
lot.

many things that didn't need to be there

cheers


2014-04-28 3:52 GMT-03:00 Simon Iten itensi...@gmail.com:

roman, thanks for your inputs.

i tried both fexpr and expr and sticked to fexpr at some point, don’t know
why though. will change it back!  (i remember reading that fexpr was more
expensive but also more precise)

to make the whole thing work with real world signals (bass guitar in my
case) you have to add an adaptive filter in the beginning of the chain
(which is very easy because you get the frequency information hehe…) this
will filter out overtones and prevent octave jumping.

thanks

simon

On 28 Apr 2014, at 08:39, Roman Haefeli reduz...@gmail.com wrote:


That works very well. Good job and thanks for sharing!

One 

Re: [PD] Keeping Number box's

2014-04-14 Thread Phil Stone
Or use the Number2 number box, and set its init attribute in 
properties. It will then init itself with the last value that was in the 
box at the time the parent patch was saved.



On 4/14/14, 10:59 AM, AP Vague wrote:
If you know exactly what you want the values to be before you open the 
patch you can replace the number atoms with messages, ie [32( instead 
of an atom. And then just send them a [loadbang] to initialize 
whatever they're going into...



On Mon, Apr 14, 2014 at 1:47 PM, kate sweeney m.k.swee...@hotmail.com 
mailto:m.k.swee...@hotmail.com wrote:


Hello,

I am using GEM to create a graphical design video. I have
completed a lot of it and have all my patches set up with the
desired numbers etc. Yet everytime i close and re-open the
project, all the numbers return to 0 which messes up my project
big time. Is there a way to save the number box's as they are so
they stay the same everytime the project is closed and re-opened?

I have included a screenshot of before and after the project is
closed and re-opened.

Many thanks.

___
Pd-list@iem.at mailto: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] Keeping Number box's

2014-04-14 Thread Phil Stone

oops, meant to send this to the list, sorry Jonathan.


On 4/14/14, 1:11 PM, Phil Stone wrote:
You have a point, if you are init'ing to zero; otherwise, it's easy to 
see that a Number2 box is init'd when you open the patch, because it 
has a non-zero value in it.


But yeah, it's a little kludgey (especially the init/no init 
button: is it status, or what *will* happen when you press it -- hint, 
it's the latter, like most buttons). I wouldn't recommend it for use 
with all those Pd nuclear weapon-control patches that are out there.



Phil


On 4/14/14, 12:56 PM, Jonathan Wilkes wrote:

On 04/14/2014 02:03 PM, Phil Stone wrote:
Or use the Number2 number box, and set its init attribute in 
properties. It will then init itself with the last value that was in 
the box at the time the parent patch was saved.


I try to avoid the iemgui init method because it isn't represented 
in the Pd diagram.


I'd rather do this:

[loadbang]

[42(
|
[numbox]

Then you can see if you made a mistake.  For example, I forgot to 
connect [loadbang] to [42(.  I can quickly scan all other places 
where I use [loadbang] to see if I made a similar error.


But if you use the init method, you must right-click and choose 
Properties on every single numbox to do error checking.  The time 
wasted isn't worth whatever it is you think you save by using init.


Digression-- consider a Properties dialog with the following button:
[don't fire nukes]

Do you press it or not?

-Jonathan




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


Re: [PD] It's too quiet in here

2013-11-21 Thread Phil Stone

On 11/21/13 1:13 PM, Jonathan Wilkes wrote:

On 11/21/2013 02:04 PM, Phil Stone wrote:
Hmm, this once-thriving list has gone awfully silent of late. Is this 
thing on? tap tap


I had the pleasure of meeting, for the first time, several august 
members of the Pd community this past weekend, thanks to Joe Deken 
and New Blankets gathering some of us together in San Diego and Los 
Angeles.


Miller, Roman, Ivica, Jonathan, (and Katja -- I didn't do more than 
say hi, sorry) I just wanted to say that I am grateful to be involved 
in a group of such talented and humble people, and constantly marvel 
at what a powerful tool has been placed into my hands, at no cost.


May Pd never die!


Hi Phil,
It was great to meet you!

Personally I've been sending diffs to Ivica to get some stuff into 
Pd-l2ork, so that some of the features I showed in my workshop will 
work out of the box.


Best,
Jonathan

I'm keeping a sharp eye on your work with Pd-l2ork on OS X, Jonathan. It 
looks like such an excellent environment, I really want to work in it. 
For one thing, I've heard all the many good arguments for straight, 
unsegmented patch cords, but I don't think I'd ever get tired of seeing 
splined patch cords in my patches! Having seen both, I'd say splines 
work better in all ways.


BTW, regarding the title of this thread; I just searched the archives 
and realized that I hadn't gotten any messages since Nov. 6. After my 
post today, I'm getting them again. Anybody else had any glitches in 
getting list messages, or is it something local for me?



Phil


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


[PD] It's too quiet in here

2013-11-21 Thread Phil Stone
Hmm, this once-thriving list has gone awfully silent of late. Is this 
thing on? tap tap


I had the pleasure of meeting, for the first time, several august 
members of the Pd community this past weekend, thanks to Joe Deken and 
New Blankets gathering some of us together in San Diego and Los Angeles.


Miller, Roman, Ivica, Jonathan, (and Katja -- I didn't do more than say 
hi, sorry) I just wanted to say that I am grateful to be involved in a 
group of such talented and humble people, and constantly marvel at what 
a powerful tool has been placed into my hands, at no cost.


May Pd never die!


Respect,

Phil Stone

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


Re: [PD] It's too quiet in here

2013-11-21 Thread Phil Stone

Hi Patrick,

I'd like to say you're very welcome but I don't think that was me! :-)

My only contribution to the Pd community is some (rather old and moldy 
at this point) polyphonic synthesizers on my web site. 
(www.pkstonemusic.com).



Best,

Phil


On 11/21/13 11:24 AM, Pagano, Patrick wrote:

Right on Phil, as I recall we web met via fractal midi software you wrote back 
in the day and you were kind enough to grant me - a starving gras student at 
that time a free license

Sent from my iPhone


On Nov 21, 2013, at 2:06 PM, Phil Stone pkst...@ucdavis.edu wrote:

Hmm, this once-thriving list has gone awfully silent of late. Is this thing on? 
tap tap

I had the pleasure of meeting, for the first time, several august members of 
the Pd community this past weekend, thanks to Joe Deken and New Blankets 
gathering some of us together in San Diego and Los Angeles.

Miller, Roman, Ivica, Jonathan, (and Katja -- I didn't do more than say hi, 
sorry) I just wanted to say that I am grateful to be involved in a group of 
such talented and humble people, and constantly marvel at what a powerful tool 
has been placed into my hands, at no cost.

May Pd never die!


Respect,

Phil Stone

___
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-l2ork running on OSX

2013-10-25 Thread Phil Stone
I have too many prerequisite libraries to run completely successfully, 
but what I can see is very impressive.


I think I'm almost immediately addicted to the splined patch cords. I'll 
play with this some more when I finish my current project.


Nice work, Jonathan (and of course, Ivica et al. -- as an OSX user, I 
haven't had the pleasure of seeing your work before today)!




Phil



On 10/24/13 9:02 PM, Jonathan Wilkes wrote:

Apropos:
Here's a first attempt at getting Pd-l2ork up and running on OSX:

https://jwilkes.nfshost.com/Pd-l2ork.app.zip

* Includes a few libraries: zexy, import, cyclone, and ggee
* I also replaced the help browser with the search-plugin powered by 
the xapian backend
* I added references and meta patches to the control, audio, and data 
structures tutorials.


If you haven't used Pd-l2ork before, it has some interesting features:
* infinite undo
* preset_hub and preset_node for settings presets on patches and 
abstractions
* quick-connect: e.g., make a [route 0 1 2 3 4 5 6 7] and eight 
message boxes below it, then select all of them and make a connection 
from the leftmost outlet of [route] to the leftmost message box.  Now 
all are connected!  (There are some other shortcuts when you select 
just the topmost or bottommost object, too.)

* pdinfo, canvasinfo, and classinfo objects
* a bunch of other improvements that should all probably be documented 
in a What's New patch that doesn't exist yet.


Please test it and let me know how it works.

If you'd like to give a donation, then please follow Joe's instructions
below for the New Blankets mini-fundraiser.

Best,
Jonathan


On 10/10/2013 12:48 AM, Joe Deken wrote:

New Blankets Inc. is a non-profit Foundation dedicated to the the
re-invention of the Free Community Public Library in the realms of new
media.  Specifically New Blankets develops the dimensions _of_

 --  free/open communities

 --  _circulation_  and _sharing_ mechanisms

 --  technology innovations

which together weave and support new benevolent cultural communities.

New Blankets is pleased to announce today the recognition of Jonathan
Wilkes as our latest Artist in Transit Fellow.

  . New Blankets has provided Jonathan with an initial honorarium of
$500 to support his work.

  . In addition to the initial honorarium support, New Blankets has
also launched a  1 : 1 matching mini-fundraiser during the
coming month (October 14 - November 14, 2013),  to further support
Jonathan and the Artist-in-Transit Fellowship:

  1)  That is, any contributions to New Blankets during Oct 14 - 
Nov 14
   which you kindly care to make and designate for Artist in 
Transit
   will be matched 1 for 1 by New Blankets -- up to a $500 
matching

   limit.
   2) At the end of the one month mini-fundraiser, the total sum
   (your contributions + NB matching amount) will be 
presented to
   Jonathan at *PdWeekend* -- to be held Nov 15-17, 2013 with 
Miller

   Puckette  Friends in San Diego and Los Angeles CA.

***
 If you would like to  make a contribution -- small or large -- 
to the
 New Blankets Artist-in-Transit fundraiser, please send e-mail 
ASAP to

 New Blankets, using the special fundraiser address :

wilkes_...@newblankets.org

 When we hear from you, we will arrange a convenient way for you to
 send your check or electronic payment to New Blankets, by 
whichever of

 several available methods may be most convenient for you.)
***


** PdWeekend**
   If you would like to participate in PdWeekend with us in
   California on Nov 15-17, you are cordially invited and 
most

   welcome!
  Kindly RSVP yes and let us know your plans to 
participate

   with us in San Diego (Nov 15) or Los Angeles (Nov 16-17)
   by sending e-mail ASAP to:

pdweek...@newblankets.org

  We will then send you a confirming e-mail immediately,
   and we will keep you advised as our *PdWeekend* plans
   and the details of events move forward, from now until
   November 15.

   The *PdWeekend* events are quite informal, but they also
   will include four structured workshops on Saturday Nov 16
   -- in co-operation with CrashSpace LA:

                 
 * Miller Puckette:   Pd+Raspberry Pi
 * Katja Vetter:   DIY Live Sampling Microphone-Build 
Slice//Jockey
 * Ico Bukvic: Laptop Orchestrating with your Friends
 * Jonathan Wilkes: Your Computer, Your Creativity

  ** Registration is required each of the above workshops **
                 

Re: [PD] Preset saving with SSSAD

2013-07-29 Thread Phil Stone

On 7/29/13 1:01 PM, Jonathan Wilkes wrote:
In fact there are so many of the latter type of improvements that it's 
probably
less work to port Pd-l2ork to Windows and OSX than it is to put those 
features
back into Pd-Extended and Vanilla.  If Pd-l2ork incorporated the 0.43 
gui changes

then that's probably what I'd spend my time doing. :)

-Jonathan


Speaking strictly selfishly, that would be a dream-come-true for me. I'd 
love to see the fork reunite, as it sounds like many excellent 
improvements have been made in Pd-l2ork that would be nice to have 
become mainstream.



Phil Stone
www.pkstonemusic.com

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


Re: [PD] direct connection from pd to webrowser, low latency

2013-04-26 Thread Phil Stone
That's a fairly brilliant idea. No need for fancy audio-quality wireless 
units, either.



Phil

On 4/26/13 1:19 PM, Jonathan Wilkes wrote:


From: katja katjavet...@gmail.com
To: o...@onyx-ashanti.com onyxasha...@gmail.com
Cc: pd-list Pd-list@iem.at; Martin Peach martin.pe...@sympatico.ca
Sent: Friday, April 26, 2013 4:08 PM
Subject: Re: [PD] direct connection from pd to webrowser, low latency



Hi Onyx,

What is your aim, do you want to entertain your (physically present) audience 
via smart phones instead of PA system?

I have a similar quest pending: to send Pd audio from a wearable computer over 
wireless to PA system.

Why not send FUDI to a box connected directly to the PA system?

-Jonathan


___
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] wireless audio from Pd to PA system (katja)

2013-03-01 Thread Phil Stone
These Line 6 units are well respected in the electric bass world, 
especially considering their moderate price. I think bass players 
appreciate tight timing, and the low lag may be one reason these units 
are popular. Also, they have proven to be rugged enough to be 
road-worthy. They can also model the hi-frequency lossiness of cords, 
though that seems of dubious value in your case.



Phil


On 3/1/13 12:24 PM, katja wrote:
Apparently, Line 6 managed to build a digital 2.4 GHz wireless with 4 
ms latency, the Relay G30, G50 etc . They do not write it in the 
specs, but most users don't notice latency and when they do, their 
support is speaking of latency as low as that:


http://line6.com/support/thread/33898

This weekend I will do some WiFi experiments and see how fast it can 
go locally, using mrpeach udp and tcp classes. If it works, one could 
use a wireless router which has no other task than routing Pd audio, 
and the computer at the receiving end could be a cheap headless board 
with no other task than receiving Pd audio and converting it to 
analog. Together the receiving device could be the size of a 
weight-watcher's lunch box, while at the transmitter side the 
computer's built-in stuff is used. Maybe I'm a bit naive here, anyway 
I'll report results from experiments.


Katja


On Fri, Mar 1, 2013 at 2:14 PM, richard duckworth 
richduckwo...@yahoo.com mailto:richduckwo...@yahoo.com wrote:


OMG - that's really high! Maybe Tranz have a belt holder solution
- they do look kind of bulky though! Maybe worth dropping them a
line, see if they'll help the Pd community

Rich Duckworth
Lecturer in Music Technology
Department of Music
House 5
Trinity College
Dublin 2
Ireland
Tel 353 1 896 1500

Digital?
Is that the thing where they take a good old sine wave and they
chop it up into little bits? --- Rupert Neve

*From:* katja katjavet...@gmail.com mailto:katjavet...@gmail.com
*To:* Antoine Villeret antoine.ville...@gmail.com
mailto:antoine.ville...@gmail.com
*Cc:* richard duckworth richduckwo...@yahoo.com
mailto:richduckwo...@yahoo.com; pd-list@iem.at
mailto:pd-list@iem.at pd-list@iem.at mailto:pd-list@iem.at
*Sent:* Friday, 1 March 2013, 13:12
*Subject:* Re: [PD] wireless audio from Pd to PA system (katja)

Found more info about TI's PurePath wireless. Latency of wireless
transmission is 768 samples minimum. Added to this must be the
latencies of ad/da conversion.

http://e2e.ti.com/support/low_power_rf/f/382/t/110331.aspx

Forget about it, this concept is only useful for home entertainment.

Katja


On Fri, Mar 1, 2013 at 1:19 PM, katja katjavet...@gmail.com
mailto:katjavet...@gmail.com wrote:

Thanks everyone for your answers.

The case is unconventional because a stereo line signal must
be sent from the computer. Professional wireless systems
assume mic or instrument. Consumer systems do transmit stereo
signal, but without bothering too much about latency.

Frankly, I did not expect the difficulty to find a good
solution. Initially I wanted the wearable computer for a music
video which is to be recorded live with sounds from natural
objects. I bought the FM transmitter so my cameraman will be
able to hear the music while he's filming. For this purpose it
is ideal. Then I thought it would be good to use the computer
in it's wearable mode for public performance. I figured that
one of the many wireless solutions would suit the purpose, but
didn't reckon with the unusual requirements.

Further searching brought me to a new technology 'PurePath'
from Texas Instruments. It has a range comparable with WiFi
(30m), while it seems to work with paired devices as in
Bluetooth. I haven't seen consumer products with this
technology, but development kits are available. A rather
convincing demo is here:

http://www.youtube.com/watch?v=0YsnZQUfVGs

If this system can work with low latency it could be perfect
for wireless Pd.

Katja




On Fri, Mar 1, 2013 at 11:41 AM, Antoine Villeret
antoine.ville...@gmail.com
mailto:antoine.ville...@gmail.com wrote:

hello,

those are good for what they have been designed for and it
depends on what you mean by exellent sound quality

I've made few tests on those few years ago and the
bandwidth could be good enough to transmit guitar/bass
signal but nothing else for me

+
a


--
do it yourself
http://antoine.villeret.free.fr
http://antoine.villeret.free.fr/


2013/2/28 richard duckworth richduckwo...@yahoo.com
   

Re: [PD] [helmholtz~]

2013-02-14 Thread Phil Stone

Hi Simon,

I've been using [sigmund~] with pretty good results, tracking the bass 
and using it to drive various things in a complex Pd setup. I'm always 
interested in alternative pitch trackers, though. I play a Steinberger 
XL, so I won't likely be carving it up to put in a hex pickup; that's 
kept me a way from Roland's approach (that plus the cost!).


I'm still quite intrigued by what you've done; do you have any 
documentation about it?


Thanks for writing,

Phil


On 2/14/13 12:48 AM, Simon Iten wrote:

hi phil,

what are you trying to do? do you need midi from your electric bass? or just a 
way to make a synth in pd?
i ask because i built a gr-300 emulation for bass that works very well and with 
almost no latency. you can drive any oscillator within pd from that. it's all 
signalpath though.
ideally you would use such a thing with a hexaphonic (or quadraphonic) pickup, 
because it's monophonic. but the same is true for helmholtz i guess.

cheers,

simon

On Feb 14, 2013, at 1:24 AM, Phil Stone pkst...@ucdavis.edu wrote:


Hi Katja,

I'm looking with great interest at your [helmholtz~] pitch tracking object. I'm 
not asking to be lazy (I'm going to try it out for myself!), but I'm wondering 
if you have any general impressions of its performance as to how it compares 
with [sigmund~]. I'm particularly interested as to how it will do for tracking 
a fretless electric bass.

It looks like an excellent piece of work, and I've enjoyed reading your 
detailed page about it.


Phil Stone

___
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] [helmholtz~]

2013-02-13 Thread Phil Stone

Hi Katja,

I'm looking with great interest at your [helmholtz~] pitch tracking 
object. I'm not asking to be lazy (I'm going to try it out for myself!), 
but I'm wondering if you have any general impressions of its performance 
as to how it compares with [sigmund~]. I'm particularly interested as to 
how it will do for tracking a fretless electric bass.


It looks like an excellent piece of work, and I've enjoyed reading your 
detailed page about it.



Phil Stone

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


Re: [PD] Raspberry Pi as rt guitar effect processor : proof of concept

2013-01-28 Thread Phil Stone

Pierre,

This is excellent news. I'm doing live processing of electric bass with 
desktop Pd, and have begun experimenting with the RPi. Your results are 
very encouraging.


It's been a good couple of weeks for Pd on the Pi. Katja's de-normal 
detective work, the Pd-extended build, and Miller's ongoing work of 
course -- this is going to be exciting.


I also like your home-brew foot gear. I did something similar with an 
Arduino mounted in an old Boss stereo foot pedal and some doorstop switches.


Best,

Phil


On 1/28/13 9:38 AM, Pierre Massat wrote:

Hi,

My blog is here : http://guitarextended.wordpress.com/
I'll be writing a few posts to explain how it works, starting tonight.

Cheers,

Pierre.

2013/1/28 Oli Larkin olilar...@googlemail.com 
mailto:olilar...@googlemail.com


very cool, awaiting the blog post! where's your blog?

On 27 Jan 2013, at 16:00, Pierre Massat wrote:


http://www.youtube.com/watch?v=NwJNeouLqgQfeature=youtu.be

Dear all,

It's working !!! :)
It looks like a revolution to me. The effect in the second half
is a sampler based on the phase-vocoder patch by Miller Puckette.
I've set Pd to use a 16 ms buffer to get it to work without
dropouts. It's a bit high but this is a demanding patch.
I'll be documenting this on my blog, and i'd be glad to have
feedback from you, about working/non-working audio interfaces for
instance.

Cheers!

Pierre.
___
Pd-list@iem.at mailto: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] pduino download?

2013-01-20 Thread Phil Stone

Hi Hans,

Is this still the right link for downloading Pduino? 
http://at.or.at/hans/pd/Pduino-0.5.zip


It's currently timing out (found on this page: 
http://puredata.info/downloads/pduino/releases/0.5).



thanks,


Phil Stone

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


Re: [PD] [PD-announce] share-mem lib

2012-10-31 Thread Phil Stone

Cyrille, this is very exciting. Where can we get more details?


Phil


On 10/31/12 4:19 PM, Cyrille Henry wrote:

hello,

i just did a initial commit of share-mem, a lib dedicated to deal with 
shared memory.


background :
pd / pd~ communication is really slow. by example, having a pd~ patch 
with 8 audio in and 8 out, use about 50% cpu of a recent computer for 
each process only to deal with audio communication.
sending a large array from one process to the other is almost not 
possible in RT.

This really limit pd~ usability.

-

Thanks to share memory, communication between process can be greatly 
improve.
This lib is mainly composed of an external, and few abstraction and 
examples.



Everything look stable, at least on a ubuntu (12.04) and a osX laptop.
Implementation follow POSIX standard, so it will unfortunately not 
work on windows.


everything that I need is there, even if lot's more work could be 
made. I hope to have user feedback before making more development.


Cheers
Cyrille


___
Pd-announce mailing list
pd-annou...@iem.at
http://lists.puredata.info/listinfo/pd-announce




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


Re: [PD] creation parameters to inlets/outlets for documentation?

2012-06-19 Thread Phil Stone
One potentially nasty drawback to this practice (I found) was that if 
you change the pseudo-argument in any way, you lose whatever connections 
were made to that inlet or outlet in the outer patch. I agree with you 
that comments are a pain in the neck, but at least they don't exhibit 
this often hard-to-find side effect.



Phil
www.pkstonemusic.com



On 6/19/12 12:41 PM, Jörn Nettingsmeier wrote:
quick question: is it legal to (ab)use creation parameters to inlets 
and outlets for documentation, or does that lead to unwanted side 
effects?


i'd like to do something like this:

[inlet Set level in dB]
[inlet Set Fader position in mm]

[outlet Current level in dB]
[outlet Current Fader position in mm]
[outlet~ Gain coefficient]

of course i could use comments, but i don't like the way they don't 
line-wrap in a controlled way, plus their association to what they are 
annotating is a bit weak for my taste...


best,


jörn





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


Re: [PD] creation parameters to inlets/outlets for documentation?

2012-06-19 Thread Phil Stone
I should clarify this by adding that the side-effect won't happen if you 
edit an abstraction's inlets/outlets without any objects that include 
that abstraction being open at the time. Apparently, the change causes a 
re-instantiation of the abstraction in the parent, breaking the 
inlet/outlet connections.



On 6/19/12 1:22 PM, Phil Stone wrote:
One potentially nasty drawback to this practice (I found) was that if 
you change the pseudo-argument in any way, you lose whatever 
connections were made to that inlet or outlet in the outer patch. I 
agree with you that comments are a pain in the neck, but at least they 
don't exhibit this often hard-to-find side effect.



Phil
www.pkstonemusic.com



On 6/19/12 12:41 PM, Jörn Nettingsmeier wrote:
quick question: is it legal to (ab)use creation parameters to inlets 
and outlets for documentation, or does that lead to unwanted side 
effects?


i'd like to do something like this:

[inlet Set level in dB]
[inlet Set Fader position in mm]

[outlet Current level in dB]
[outlet Current Fader position in mm]
[outlet~ Gain coefficient]

of course i could use comments, but i don't like the way they don't 
line-wrap in a controlled way, plus their association to what they 
are annotating is a bit weak for my taste...


best,


jörn





___
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] OT - C++ for reusable dsp lib - or better use C?

2012-02-26 Thread Phil Stone

On 2/26/12 10:29 AM, Mathieu Bouchard wrote:

Le 2012-02-25 à 14:29:00, Phil Stone a écrit :
IMO, Pd *approaches* this potential of live-coding, but isn't there 
yet. The edit/play dichotomy,


The Edit/Play modes are there just to allow more different mouse 
commands. It's not really a feature of the engine, it's just for 
switching between two sets of mouse behaviours in the GUI, because 
there are not enough buttons.


That's a good point, but the other problem I mentioned -- audio dropouts 
during editing, especially if the dsp graph needs recompiling -- is 
still a deal breaker for live *performance* coding (unless one embraces 
the glitches). Now, if by 'live', one just means highly interactive, 
I'll grant Pd that. That's more what I'm concerned with anyway -- a 
rapid connection between idea and execution, not necessarily doing 
programming in front of an audience.



I also like programming in word languages,


For what I presume you call a non-word language, Pd has quite a large 
vocabulary of words in it.


I'm pretty sure you, and most readers of this list, understand the 
distinction I am making between graphics-dominated and text-dominated 
programming environments. Perhaps the scare quotes should be a tip that 
I'm not speaking in exactitudes at that moment. :-)


Don't think that your points about the liveness of Pd are lost on me, 
though. I've been thinking about it a great deal since watching that 
video yesterday, and realized the very interactiveness the guy in the 
video was bragging about is something we take for granted. Number boxes 
change values instantly! Wow!


I was excited, however, by the capability of changing underlying code by 
manipulating the product. Pd even nudges into that territory with its 
bastard son dynamic patching, but it's not particularly intuitive.



Phil

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


Re: [PD] OT - C++ for reusable dsp lib - or better use C?

2012-02-25 Thread Phil Stone

On 2/25/12 11:43 AM, Mathieu Bouchard wrote:

Le 2012-02-25 à 12:32:00, patrick a écrit :


I wish I could code an external like he's coding:
http://vimeo.com/36579366


you're not mentioning which part of this extremely long video you are 
referring to, and this player does not allow skip-ahead, which means I 
can't fast-forward faster than the download speed of the whole thing. 
This is why I won't try to figure out what you mean.


It's well worth watching, all the way through. It was a eureka moment 
for me -- I now see the potential of live-coding.


Phil




 __
| Mathieu BOUCHARD - téléphone : +1.514.383.3801 - 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] OT - C++ for reusable dsp lib - or better use C?

2012-02-25 Thread Phil Stone

On 2/25/12 1:20 PM, Mathieu Bouchard wrote:

Le 2012-02-25 à 13:14:00, Phil Stone a écrit :


It's well worth watching, all the way through. It was a eureka 
moment for me -- I now see the potential of live-coding.


Ah ok, you mean that you didn't see the potential of live-coding by 
using PureData ?


But PureData isn't just about the potential of live-coding. It's also 
about doing it. Possibly even every time you use it.


IMO, Pd *approaches* this potential of live-coding, but isn't there yet. 
The edit/play dichotomy, and the probability of audio dropouts resulting 
from trying to use both modes simultaneously is a big obstacle to smooth 
live-coding.


I use Pd because it is the best compromise that I have found toward 
achieving this idea-implementation feedback loop for audio/music 
design.  I still maintain a divide between my design phase and my 
performance phase, though; I'd love to see that divide fade away.


I also like programming in word languages, and a Supercollider-type 
language with this the one in this video's level of instantaneous, 
round-trip synchronization between code and product would be pretty great.



Phil

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


Re: [PD] OT - C++ for reusable dsp lib - or better use C?

2012-02-25 Thread Phil Stone

On 2/25/12 2:49 PM, Hans-Christoph Steiner wrote:


On Feb 25, 2012, at 4:14 PM, Phil Stone wrote:


On 2/25/12 11:43 AM, Mathieu Bouchard wrote:

Le 2012-02-25 à 12:32:00, patrick a écrit :


I wish I could code an external like he's coding:
http://vimeo.com/36579366


you're not mentioning which part of this extremely long video you 
are referring to, and this player does not allow skip-ahead, which 
means I can't fast-forward faster than the download speed of the 
whole thing. This is why I won't try to figure out what you mean.


It's well worth watching, all the way through. It was a eureka 
moment for me -- I now see the potential of live-coding.


I agree that instant feedback is very important, that's a big reason 
why I use Pd.  I wonder if he's ever used Pd.  Pd has been providing a 
lot of that experience for almost 2 decades now.  The one thing in it 
that Pd does not provide is the ability to click on the generated 
image in order to see which code is generating that part of the image. 
 That would be a nice feature to have.  But I can't see how you would 
generalize beyond drawing pictures.  Drawing with code is basically 
the easiest realm to solve that particular problem, IMHO. How would 
you click on the sound to see the code that is generating it?  How 
would you click on a mail program, a network service, file encryption?


Visual representations of audio/music parameters are quite common 
(spectral plots, traditional and non-traditional notation, spatial 
controls, etc.). Having a two-way connection between graphical 
representations of audio/music and the underlying code would be quite 
useful and conducive to empirical experimentation.



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


[PD] pop-up menu, drop-down select box

2012-02-12 Thread Phil Stone
I can't remember ever seeing add-ons for PD for widgets like pop-up 
menus or drop-down select boxes. Has anyone done any tcl experimenting 
in this area?


The closest widget I can think of is Sevy's Playlist; as cool as it is, 
it doesn't have the screen real-estate economy of a pop-up or drop-down.



Phil Stone

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


Re: [PD] pop-up menu, drop-down select box

2012-02-12 Thread Phil Stone

Thank you, Jonathan. [tof/pmenu] does exactly what I need.


Phil



On 2/12/12 9:49 PM, Jonathan Wilkes wrote:

I used my search plugin to search for gui menu and found one: tof/pmenu

There is also [popup] which looks like it's now in the library flatgui (which used to 
be flatspace).

-Jonathan



- Original Message -

From: Phil Stonepkst...@ucdavis.edu
To: PD listpd-list@iem.at
Cc:
Sent: Monday, February 13, 2012 12:19 AM
Subject: [PD] pop-up menu, drop-down select box

I can't remember ever seeing add-ons for PD for widgets like pop-up menus or
drop-down select boxes. Has anyone done any tcl experimenting in this area?

The closest widget I can think of is Sevy's Playlist; as cool as it is, it
doesn't have the screen real-estate economy of a pop-up or drop-down.


Phil Stone

___
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] how to tidy up patches ? (?????? ????????)

2012-01-11 Thread Phil Stone

On 1/11/12 6:12 PM, Alexandre Torres Porres wrote:

 is there any option in PD to make complex patches look less messy ?

not really. What you have to do is be able to design the patches with 
method, and think about it.


I personally don't see this as a restrain, or something serious we 
should worry about in doing it. I can easily get lost when MAX's 
chords are not just a straight line explicitly telling you where it's 
coming from and going to. And hiding chords or patch bits can be a lot 
like throwing the mess under the carpet.


A code in order to be really clean and tidy needs to be well 
organized, rewritten, and just clear.


So, all you got is subpatches and send objects. Just do hundreds of 
subpatches, it can be really good for making you have to think about 
designing an organized patch, it may be better than being allowed to, 
lets say, cheat and pretend is not messy.


but that's me...

cheers
alex


No, it's me, too, and many other PD-coders, I'm sure. Excellent advice, 
Alex.



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


Re: [PD] using PD/GEM to generate timecode overlay

2011-11-03 Thread Phil Stone

On 11/3/11 7:37 AM, Mathieu Bouchard wrote:
Symbols are never freed, so, it's better to use several separate 
[text2d] to reduce the total number of symbols created.


Otherwise, as tens of thousands of symbols are created, not only it 
takes RAM, but it also slows down the symbol table (this means it 
slows down any uses of gensym).


Good point, Mathieu. Attached is a stopwatch I made a few years ago 
that practices symbol conservation. It could easily be modified to do 
timecode.



Phil Stone
pkstonemusic.com


#N canvas 651 43 543 587 10;
#X obj 0 1 cnv 15 150 30 empty empty empty 20 12 0 14 -228856 -66577
0;
#X obj 41 2 cnv 15 12 28 empty \$0-hour_colon : 0 13 0 24 -1 -241291
0;
#X obj 82 2 cnv 15 12 28 empty \$0-minute_colon : 0 13 0 24 -1 -241291
0;
#X obj 2 2 cnv 15 14 28 empty empty empty 0 15 0 24 -1 -241291 0;
#X obj 163 7 loadbang;
#X obj 11 125 f 0;
#X msg 98 527 label \$1;
#X obj 98 548 s \$0-hours;
#X msg 263 527 label \$1;
#X obj 263 548 s \$0-minutes;
#X msg 453 527 label \$1;
#X obj 453 548 s \$0-seconds;
#X obj 10 258 f 0;
#X obj 10 284 mod 60;
#X obj 10 340 f 0;
#X obj 40 340 + 1;
#X obj 10 361 mod 60;
#X obj 10 316 select 0;
#X obj 10 446 f 0;
#X obj 40 446 + 1;
#X obj 10 390 select 0;
#X obj 10 467 mod 99;
#X obj 10 490 makefilename %2d;
#X msg 47 125 0;
#X obj 176 29 r \$0-reset;
#X msg 130 202 0;
#X obj 10 232 spigot 0;
#X msg 78 184 0;
#X obj 11 185 t b a;
#X msg 11 208 1;
#X obj 261 346 symbol 0;
#X obj 257 255 spigot 0;
#X obj 163 54 t b b b b b b;
#X msg 313 227 0;
#X msg 283 227 1;
#X obj 236 228 sel 1;
#X text 278 53 seconds between restarts;
#X obj 383 306 s \$0-r-onoff;
#X msg 383 281 color \$1 0;
#X msg 383 257 13;
#X msg 413 257 16;
#X obj 10 37 r \$0-onoff;
#X obj 77 124 sel 0;
#X obj 10 60 t f f f;
#X obj 10 85 s \$0-color;
#X obj 383 210 r \$0-color;
#X obj 383 233 sel 0 1;
#X text 35 206 skip 1st bang;
#X obj 114 319 makefilename %02d;
#X obj 53 2 cnv 15 30 28 empty \$0-minutes -- 2 15 0 24 -1 -241291
0;
#X obj 95 2 cnv 15 54 28 empty \$0-seconds -- 2 15 0 24 -1 -241291
0;
#X obj 3 18 bng 10 250 50 0 \$0-reset empty empty 17 7 0 10 -262144
-1 -1;
#X obj 128 8 tgl 17 0 \$0-onoff \$0-r-onoff empty 17 7 0 10 -258699
-1 -262144 0 1;
#N canvas 0 22 336 383 resetDisplay 0;
#X obj 31 25 inlet;
#X msg 30 308 label \$1;
#X obj 30 335 s \$0-hours;
#X msg 101 308 label \$1;
#X obj 101 335 s \$0-minutes;
#X msg 182 308 label \$1;
#X obj 182 335 s \$0-seconds;
#X obj 30 67 symbol --;
#X obj 101 66 symbol --;
#X msg 174 204 label \$1;
#X msg 185 134 label \$1;
#X obj 185 161 s \$0-hour_colon;
#X obj 174 231 s \$0-minute_colon;
#X obj 172 65 symbol :;
#X connect 0 0 8 0;
#X connect 0 0 7 0;
#X connect 0 0 13 0;
#X connect 1 0 2 0;
#X connect 3 0 4 0;
#X connect 5 0 6 0;
#X connect 7 0 1 0;
#X connect 8 0 5 0;
#X connect 8 0 3 0;
#X connect 9 0 12 0;
#X connect 10 0 11 0;
#X connect 13 0 10 0;
#X connect 13 0 9 0;
#X restore 160 167 pd resetDisplay;
#X msg 165 527 label \$1;
#X obj 165 548 s \$0-hour_colon;
#X msg 343 527 label \$1;
#X obj 164 504 symbol :;
#X obj 341 424 symbol :;
#X obj 343 548 s \$0-minute_colon;
#X obj 10 415 t a b;
#X msg 416 424 0;
#X obj 257 279 t b b b b;
#X obj 416 453 makefilename %02d;
#X obj 88 389 makefilename %02d;
#X obj 14 2 cnv 15 27 28 empty \$0-hours -- 0 15 0 24 -1 -241291 0
;
#X obj 40 258 + 1;
#X obj 11 166 metro 1000;
#X text 265 16 - wraps to zero at 100 hours;
#X text 265 39 - doesn't remember partial;
#X text 265 75 - doesn't leak symbol table memory;
#X connect 4 0 32 0;
#X connect 5 0 35 0;
#X connect 5 0 67 0;
#X connect 6 0 7 0;
#X connect 8 0 9 0;
#X connect 10 0 11 0;
#X connect 12 0 13 0;
#X connect 13 0 17 0;
#X connect 13 0 48 0;
#X connect 13 0 66 0;
#X connect 14 0 16 0;
#X connect 15 0 14 1;
#X connect 16 0 15 0;
#X connect 16 0 20 0;
#X connect 16 0 64 0;
#X connect 17 0 14 0;
#X connect 18 0 21 0;
#X connect 19 0 18 1;
#X connect 20 0 60 0;
#X connect 21 0 19 0;
#X connect 21 0 22 0;
#X connect 22 0 6 0;
#X connect 23 0 67 0;
#X connect 24 0 32 0;
#X connect 25 0 15 0;
#X connect 25 0 19 0;
#X connect 25 0 66 0;
#X connect 26 0 12 0;
#X connect 27 0 26 1;
#X connect 28 0 29 0;
#X connect 28 1 26 0;
#X connect 29 0 26 1;
#X connect 30 0 6 0;
#X connect 30 0 8 0;
#X connect 30 0 54 0;
#X connect 31 0 62 0;
#X connect 32 0 5 0;
#X connect 32 1 25 0;
#X connect 32 2 53 0;
#X connect 32 3 27 0;
#X connect 32 4 34 0;
#X connect 32 5 23 0;
#X connect 33 0 31 1;
#X connect 34 0 31 1;
#X connect 35 0 31 0;
#X connect 38 0 37 0;
#X connect 39 0 38 0;
#X connect 40 0 38 0;
#X connect 41 0 43 0;
#X connect 42 0 27 0;
#X connect 43 0 44 0;
#X connect 43 1 42 0;
#X connect 43 2 5 0;
#X connect 45 0 46 0;
#X connect 46 0 39 0;
#X connect 46 1 40 0;
#X connect 48 0 10 0;
#X connect 54 0 55 0;
#X connect 56 0 59 0;
#X connect 57 0 54 0;
#X connect 58 0 56 0;
#X connect 60 0 18 0;
#X connect 60 1 57 0;
#X connect 61 0 63 0;
#X connect 62 0 33 0;
#X connect 62 1 30 0;
#X connect 62 2 58 0;
#X connect 62 3 61 0;
#X connect 63 0 10 0;
#X connect

Re: [PD] [PD-announce] PD (audio+code)--“eetz” new EP @ FIBRR RECORDS [NOISH]

2011-04-20 Thread Phil Stone

Oskoff,

This is a formidable and beautiful piece...


Phil


On 4/20/11 9:55 AM, oskoff lovich wrote:

Hi all

a new audio+code release

salut!

--
---
*chaos audio teorie – extrange attractors–[from mathematical functions 
to organic jungle sounds]*

-

EP: one track 25 minutes + code (pure data)

Release generated from the heretical use and the experimentation with 
the sonic possibilities of the iterative function “logistics” in a 
“complex number” versión [real+imaginary].


Inspirated but desviated from the research and work by “Elaine A. 
Walker” http://www.ziaspace.com/elaine/chaos/ChaosMelodyTheory.pdf


f(xn+1) = 1 – rxn2

adding chaos to the chaos

jumping from attractor to attractor

eternal instability

3d Fractals modulate the temporal frequency of the iterations (Chaos 
PD external by Ben Bogart) Audio generators : I used [polywavesynth] a 
polyphonic synthesizer for Pure Data by Phil Stone 
http://www.pkstonemusic.com/polyWaveSynth.html and some other more 
simple oscilator, [nqsint] + FM-AM .


After record some audio blocks using the code included. I edited and 
mixed them into Ardour.


software : Pure Data + Ardour Linux: Ubuntu Karmic Koala

:::

Download Audio  VBR MP3 31mb 
http://www.archive.org/download/eetz_noish/eetz_noish.mp3


Download Audio WAV 256.6 mb 
http://www.archive.org/download/eetz_noish/yupana_c_a_t_noish.wav


Download CODE (pureData) 
http://noconventions.mobi/noish/download/yupana_Exploit_cat.zip


*:::*

FIBRR RECORDS http://www.apo33.org/records/doku.php?id=virtual_records

noish [oscar martin] http://noconventions.mobi/noish

*:::*


--
mEtaminaFreeNetRadio  http://metaminafnr.hotglue.me/

http://noconventions.mobi/noish


___
Pd-announce mailing list
pd-annou...@iem.at
http://lists.puredata.info/listinfo/pd-announce


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


Re: [PD] MIDI triggered samples

2011-03-25 Thread Phil Stone

Hi Jaime,

Thanks for the suggestion, and for further clarifying (in my mind) what 
I'll need. I think readsf~ won't do because of the open before play 
requirement -- it will introduce latency and prevent re-triggering, if 
I'm not mistaken.


I guess it's going to be a matter of loading as many tables in memory as 
I can get away with and using tabread4~ with a phasor.



Thanks for writing,

Phil


On 3/24/11 11:37 PM, Jaime Oliver wrote:

Hi Phil,

if they'll always play from the beginning and the only control you
need is amplitude, then I would try readsf~.

J

On Thu, Mar 24, 2011 at 1:57 PM, Phil Stonepkst...@ucdavis.edu  wrote:

OK, this was probably too broad a way to pose this. Let me try it this way:
I'm not concerned with looping, re-sampling or sample-rate changing. I
simply want a low-latency trigger of a sound file from an incoming event.
The file(s) may, however, be quite large.

So, is a phasor-scanned [tabread4~] the best way to go about this? Will
memory management become an issue if I have 44 or 88 of these large samples
in memory at once?

thanks,

Phil


On 3/24/11 11:30 AM, Phil Stone wrote:

Hello collective PD mind,

Despite having worked with PD for years, I've never used it as a sample
player. I have a project coming up where I will need to build a bank of
MIDI-keyboard-triggered samples to play in real-time, with velocity
sensitivity and one sample per key. Rather than reinvent the wheel, is there
something someone has already done along this line? If not, can anyone give
me a basic outline from which I can start?


Phil Stone
www.pkstonemusic.com

___
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] MIDI triggered samples

2011-03-25 Thread Phil Stone

How did I miss this one? Thanks, William, [tabplay~] indeed looks promising.

And thanks for the cool example, Jose.


Phil


On 3/25/11 3:22 PM, William Brent wrote:

Sounds like there's no shortage of options here, but since you don't
have to do any transposing, [tabplay~] is useful and just as low
latency as a [phasor~] + [tabread4~].  It's great for long files
because you don't have to worry about bit precision for the index.



On Fri, Mar 25, 2011 at 6:09 PM, Jose Luis Santorcuato
santorcuat...@gmail.com  wrote:

Hi Phil, the promised... my patch for work with korg padkontrol, easy to
use, and very simple.
Best
José

2011/3/25 Charles Goyardc...@fsck.fr

Hi Phil,

Phil Stone wrote:

Thanks for the suggestion, and for further clarifying (in my mind)
what I'll need. I think readsf~ won't do because of the open before
play requirement -- it will introduce latency and prevent
re-triggering, if I'm not mistaken.

It seems that readsfv~ from moonlib could do the job: it does
direct-from-disk reading. I tried with a 650MB wav file with no
perceptible latency.

Plus keep in mind that once a file has been read, it can stay for some
time in the system disk caches.



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



--
http://arselectronicachile.blogspot.com
http://comunicacionnativa.blogspot.com/
http://www.myspace.com/santorcuato




___
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] MIDI triggered samples

2011-03-24 Thread Phil Stone

Hello collective PD mind,

Despite having worked with PD for years, I've never used it as a sample 
player. I have a project coming up where I will need to build a bank of 
MIDI-keyboard-triggered samples to play in real-time, with velocity 
sensitivity and one sample per key. Rather than reinvent the wheel, is 
there something someone has already done along this line? If not, can 
anyone give me a basic outline from which I can start?



Phil Stone
www.pkstonemusic.com

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


Re: [PD] MIDI triggered samples

2011-03-24 Thread Phil Stone
OK, this was probably too broad a way to pose this. Let me try it this 
way: I'm not concerned with looping, re-sampling or sample-rate 
changing. I simply want a low-latency trigger of a sound file from an 
incoming event. The file(s) may, however, be quite large.


So, is a phasor-scanned [tabread4~] the best way to go about this? Will 
memory management become an issue if I have 44 or 88 of these large 
samples in memory at once?


thanks,

Phil


On 3/24/11 11:30 AM, Phil Stone wrote:

Hello collective PD mind,

Despite having worked with PD for years, I've never used it as a 
sample player. I have a project coming up where I will need to build a 
bank of MIDI-keyboard-triggered samples to play in real-time, with 
velocity sensitivity and one sample per key. Rather than reinvent the 
wheel, is there something someone has already done along this line? If 
not, can anyone give me a basic outline from which I can start?



Phil Stone
www.pkstonemusic.com

___
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] Polyphony and granular synthesis, etc.

2011-03-10 Thread Phil Stone

Peter,

You are correct that [poly] imposes a MIDI-like structure in that it 
works with note/velocity pairs. I just wanted to point out that it does 
not clip those tuplets in a MIDI way; i.e., you can pass floats for both 
note and velocity to your polyphonic instrument. Your general point 
is still taken, that a more generalized, perhaps list-passing [poly] 
would be very useful.


BTW, I've made a granular-based polyphonic synthesizer for Pd; it's 
here: http://www.pkstonemusic.com/polygrainsynth.html , along with it's 
older sibling a subtractive/fm hybrid polyphonic synthesizer: 
http://www.pkstonemusic.com/polywavesynth.html .



Phil Stone


On 3/10/11 9:25 AM, Peter Kirn wrote:

Hi everyone,
I'm revisiting granular patches as I work on some examples for libpd.
Any kind of granular synthesis is, of course, heavily dependent on
polyphony. That raises the question of how to instantiate multiple
copies of the same abstraction.

The issue is, many non-external methods of doing this right now depend
on poly, which in turn assumes MIDI parameters. I would prefer
something that uses arbitrary parameter lists.

We actually could now do this two ways:
1. We can instantiate multiple patches when opening them in libpd,
maintaining independent references to each patch, as Peter Brinkmann
recently described on his blog - http://bit.ly/egBGV2

2. Perhaps there's a way to do this using an abstraction?

nqpoly, etc., I believe did this, but it seems it's not supported -
and may not be the best approach?

Thanks,

Peter

PETER KIRN | http://createdigitalmusic.com | ny, ny |
pe...@createdigitalmedia.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


Re: [PD] Music made with PD

2011-03-01 Thread Phil Stone
Very nice! Have you discussed the Zin here before? If not, what is going 
on there?



Phil Stone
www.pkstonemusic.com

On 3/1/11 8:15 AM, Eduardo Patricio wrote:


Hello, list!

Two more videos:

http://vimeo.com/20464262 - Wii stuff + Pd

http://vimeo.com/20464964 - Zin (arduino based) + Pd

Cheers

Eduardo

_
Eduardo Patrício
http://www.eduardopatricio.com.br
+55 41 8434-0480


___
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] Need Help Understanding pack

2011-02-09 Thread Phil Stone
Happens to me all the time -- I have to point when I'm a passenger 
giving directions to a driver -- I usually say the wrong one first.


I thought it was because I'm left-handed (or slightly brain-damaged).


Phil


On 2/9/11 1:16 AM, Frank Barknecht wrote:

On Wed, Feb 09, 2011 at 08:52:50AM +0100, Frank Barknecht wrote:

Again, left-alignement helps thinking about and reading patches. See the
subpatch for a solution without pipe - and without triggers as well. [trigger]
is important, but only when objects don't have enough outlets themselves.
[unpack 0 0 0] already has three outlets that, just like [t f f f] fire from
left to right, so triggering explicitly is not needed.

Oops. Please invert: just like [t f f f] fires from right to left.

71 of 364 (19.5%) college professors and 311 of 1185 (26.2%) college students
said that they occasionally, frequently or all of the time had difficulty when
they had to quickly identify right from left.
References:

 1. Brandt, J. and Mackavey, W. Left-right confusion and the perception of
 bilateral symmetry. International Journal of Neuroscience, 12:87-94, 1981.

 2. Hannay, H.J., Ciaccia, P.J., Kerr, J.W. and Barrett, D. Self-report of
 right-left confusion in college men and women. Perceptual and Motor Skills,
 70:451-457, 1990.

 3. Harris, L.J., Gitterman, S.R. University professors' self-descriptions
 of left-right confusability: sex and handedness differences. Perceptual and
 Motor Skills, 47:819-823, 1978.

http://faculty.washington.edu/chudler/java/hands1.html

Ciao



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


Re: [PD] Maybe I'm pushing dynamic object creation too far

2011-02-02 Thread Phil Stone
Ed, I don't know if anecdotal confirmation will help you here, or just 
make you more frustrated, but I've noticed that I get more dropouts 
using Jack as opposed to portaudio (OS X) for the exact same 
processor-load.  This has caused me to switch back to portaudio.  Does 
anybody have any idea why this might be?



Phil Stone
www.pkstonemusic.com


On 2/2/11 3:25 PM, Ed Kelly wrote:

On 2011-02-02 01:00, Ed Kelly wrote:

I get dropouts, regardless of the jack buffer size/buffers number. Is this
because the dynamic creation of a new object interrupts the pd audio stream?

If


so, can this be alleviated - 1. is it a GUI problem (and will pd 0.43 fix it)
and 2. if so, can pd -nogui sort it out?

the problem most likely comes from the DSP graph being continuously rebuilt.
the only things you can do for now is:
- - try to reduce rebuilding of the DSP graph as much as possible.
needeless to say that you shouldn't dynamically create objects that are
not needed.
more interesting is that e.g. creating 3 objects while audio is running,
will re-caculate the DSP graph 3 times. even if this happens in 0
logical time. so i you know you are going to schedule several
dynamically created objects at once, turn audio off before and turn it
on again after you do the actual creation.

Dammit!
Only one at a time, but they are tables of perhaps 30 points. Then I copy
data from the input buffer into the table.
It has to be running with the audio, since the audio is being re-mixed in real
time.
Everything works fine if I'm using the onboard sound - e.g. OSS, but the
problems only happen when I switch to jack. Of course the onboard sound would be
OK if I was using only output, but the whole point is to live-sample the input.
The mic input on my laptop is really crappy.


- - try to get the DSP graph building into a separate thread.
well, this involves pd~ or the like

Dammit again - I'm using the second core of the machine for the live score,
dynamic object creation in GEM
  - but I see the new version of Inscore supports PD, so all my work over the
last 6 months has been for nothing.
Pah!

Ed


fgmasdr
IOhannes





[1] btw, it's usually really easy to check things: e.g. running your
patch with -nogui and see whether you get dropouts might take about
the same time as (you) asking on this list, (me) answering on this list
and (you) reading the answer - not counting the delay due to
amil-servers and the like. anyhow.
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk1JKCQACgkQkX2Xpv6ydvQzfQCgsvmL0cevgXGPbL1oZW4keMcu
diwAoJaN6Pvheh261jAZwzr2CpJ78ypV
=z/KF
-END PGP SIGNATURE-




___
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] Am I alone?

2011-01-29 Thread Phil Stone

On 1/29/11 12:16 PM, Josh Moore wrote:

Well in my opinion most electroacoustic shit is all surrealist/dadaist crap.

The people involved try too hard to be the electronic version of John
Cage, it's quite annoying.
In fact, I'm so against it that I'm going to come up with a parody
album with actual good dance music
that uses elements of the academic code geek norm with real electronic
music that have titles like
computer scientists make for very bad musicians and chainsaw in a
cave, recorded 6 feet down


Rest of polemic deleted for brevity's sake

You're certainly going way out on a limb with that position -- I mean, 
how brave of you to take up the mantle of champion for poor, defenseless 
good dance music.


If it weren't for experimentalists, the tools used by pop musicians to 
make good dance music wouldn't exist in the first place. If you don't 
like the compositions made by experimentalists, don't listen to them, 
but you haven't come up with a compelling argument for the innate 
superiority of the music you happen to find enjoyable, merely a rather 
juvenile list of pejoratives for that which doesn't happen to appeal to 
your taste.


By the way, it is considered bad nettiquette to cross-post to several 
lists like this.  I have limited my reply to one list.



Phil Stone
www.pkstonemusic.com

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


Re: [PD] 200 voices of timbre-space navigation

2010-11-22 Thread Phil Stone
Really, really great, Hans!  I'm having a lot of fun with this, and look 
forward to digging into it to figure out how it works...



Phil


On 11/22/10 9:47 AM, Hans-Christoph Steiner wrote:


I was just working on a library of objects for creating and managing 
many instances.  In the process I created a couple examples to play with:


- ticker.pd, a 100 voice clock ticker, make it tick very fast!

- run-200voicestest.pd, a 200 voice sample stretcher and panner

These are based on voicepoly/voicepolywrap, which aims to be an 
easy-to-use replacement for nqpoly4.  You can drop voicepoly.pd and 
voicepolywrap.pd into your path 
(http://puredata.info/docs/faq/how-do-i-install-externals-and-help-files ) 
and then use it from anywhere without having to copy it into your 
project.


http://at.or.at/hans/pd/play/200voices.zip

Hopefully you have as much as I did making it!

.hc


 



If you are not part of the solution, you are part of the problem.



___
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] Snow Leopard 64-bit: Pd-0.42.5-extended-rc3 not found

2010-06-16 Thread Phil Stone

Hi Hans,

I figured I'd try the 64-bit build for Snow Leopard, but it's 404'ing 
from link on the PD Installers page.



Phil Stone
www.pkstonemusic.com

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


Re: [PD] Pd-extended 0.42.5 release candidate 2 released!

2010-06-14 Thread Phil Stone

On 6/11/10 2:25 PM, Hans-Christoph Steiner wrote:


Of course we missed somethings, so now we have 0.42.5-rc2!


Hi Hans,

Most things look good so far, (macbook pro intel 10.6).  Any idea what 
all the





canvas_coords



insert mucho whitespace here


messages cluttering up my console are?


Phil



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


Re: [PD] nusmuk_audio WAS: Max Smoother Audio than Pd?

2010-04-16 Thread Phil Stone
There is little doubt that dance music dominates popular music, and has 
done so for eternity, but it certainly does not encompass all that is 
good music.


Just because you feel the urge to move your body to music that is not 
dance-centric, i.e., you rock to Beethoven, or Liszt, or Charlie Parker, 
that does not mean music should be judged by its ability to draw people 
on to the dance floor.  That really describes a rather small slice of 
good music.  Nor, I think, should it be the metric by which Pd is 
judged -- certainly not Pd's Hello World -- unless Pd is defined as a 
programming language for electronic dance music.


Also, I think there has been some f'ing excellent dance music made with 
Pd, so I don't really understand the complaint in the first place.


Phil


Jonathan Wilkes wrote:

--- On Thu, 4/15/10, Phil Stone pkst...@ucdavis.edu wrote:

  

From: Phil Stone pkst...@ucdavis.edu
Subject: Re: [PD] nusmuk_audio WAS: Max Smoother Audio than Pd?
To: PD list pd-list@iem.at
Date: Thursday, April 15, 2010, 7:49 PM
In addition to disagreeing vehemently
with your main point (Pd is good for little more than
experimentation), I find this a piss-poor acid test for
music that sounds good:

colet.patr...@free.fr
wrote:


there is no such project that show how pd is cool to
  

make people moving on the dance floor.



Phil- I dig music with compelling sounds, and I generally feel the 
urge to move my body to music I dig.  One can use whatever 
test one wants to hold up some music as genuine, and the question does 
it draw people out onto the dance floor? is just as valid as any other in 
this regard.


But then if the point of the acid test is to demonstrate the strengths 
of a visual programming paradigm for the rapid implementation of various  
dsp techniques to generate music, I'd say the OP's test is quite a fitting 
and effective Hello World for Pd.


-Jonathan
   
  

Phil Stone
www.pkstonemusic.com

___
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] nusmuk_audio WAS: Max Smoother Audio than Pd?

2010-04-15 Thread Phil Stone
In addition to disagreeing vehemently with your main point (Pd is good 
for little more than experimentation), I find this a piss-poor acid test 
for music that sounds good:


colet.patr...@free.fr wrote:

there is no such project that show how pd is cool to make people moving on the 
dance floor.
  



Phil Stone
www.pkstonemusic.com

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


Re: [PD] any mac OS terminal experts?

2010-03-27 Thread Phil Stone
Strike that; I see you were talking about the [shell] external, not 
bash.  That'll teach me to post before getting coffee in.



Phil


Phil Stone wrote:

Andy Farnell wrote:

On Sat, 27 Mar 2010 11:22:20 -0400
Michal Seta m...@artengine.ca wrote:

 
 

in MacOS, however, it always reports the root of
the system.  


If ever there was a nasty accident waiting to happen
this takes the cake :)


  
Except it isn't true, at least as far as I can tell from a quick check 
of the shell.  pwd reports the current directory, at least interactively.



Phil Stone




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


Re: [PD] any mac OS terminal experts?

2010-03-27 Thread Phil Stone

Andy Farnell wrote:

On Sat, 27 Mar 2010 11:22:20 -0400
Michal Seta m...@artengine.ca wrote:

 
  

in MacOS, however, it always reports the root of
the system.  



If ever there was a nasty accident waiting to happen
this takes the cake :)


  
Except it isn't true, at least as far as I can tell from a quick check 
of the shell.  pwd reports the current directory, at least interactively.



Phil Stone

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


Re: [PD] Hello!

2010-02-18 Thread Phil Stone

Welcome, Josh.

I'll also put in a plug here for my synthesizer based on Jamie Bullock's 
granular synthesis engine:


http://www.pkstonemusic.com/polygrainsynth.html


Phil



Derek Holzer wrote:

Hi Josh,

welcome on board! I also went from Reaktor (and Audio Mulch) to Pd, 
but that was many years ago in the dark ages when I used woolly 
mammoths on a treadmill to power my laptop, and cavebear bones as a 
physical interface.


If you're into granular stuff, have a look at my Particlechamber 
abstraction:


http://macumbista.net/?page_id=514

Due for an update after 7 long years sometime this spring or summer ;-)

Best,
Derek

Josh Moore wrote:


It's great fun, more stable than Reaktor which I think is yuck to
begin with, and I'm mostly learning for the lack of good live granular
synthesis on the mac.





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


Re: [PD] PD with SnowLeopard

2010-01-05 Thread Phil Stone
I was having a similar problem, but eventually noticed that the 
freeze-ups happened only after wake from sleep.  With sleep disabled 
(not a good long-term solution, I realize), Pd-extended (v. 0.41.4) runs 
rock-stable.  I halfway suspect it is my M-Audio Ozone drivers that is 
not recovering from sleep, but I haven't tested to isolate that yet.



Phil Stone
http://www.pkstonemusic.com


Morgan Evans-Weiler wrote:
Is anybody having problems running Pd extended with Snow Leopard? I'm 
having trouble getting it running correctly without it freezing up. It 
will work fine for a few minutes but soon freezes and will not let me 
open or close files or open or close the program. 
I would appreciate any help. 
Thanks

Morgan


___
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 with SnowLeopard

2010-01-05 Thread Phil Stone
A follow-up:  I now strongly suspect that it is the M-Audio Ozone driver 
for Snow Leopard that is freezing on sleep.  I tried sleeping my 
Pd-extended setup without the keyboard connected (i.e. using the 
MacBook's internal sound out), and there was no sleep-freeze.  I did 
have to turn audio off and then on again after waking before sound would 
be produced, however.



Phil


Phil Stone wrote:
I was having a similar problem, but eventually noticed that the 
freeze-ups happened only after wake from sleep.  With sleep disabled 
(not a good long-term solution, I realize), Pd-extended (v. 0.41.4) 
runs rock-stable.  I halfway suspect it is my M-Audio Ozone drivers 
that is not recovering from sleep, but I haven't tested to isolate 
that yet.



Phil Stone
http://www.pkstonemusic.com


Morgan Evans-Weiler wrote:
Is anybody having problems running Pd extended with Snow Leopard? I'm 
having trouble getting it running correctly without it freezing up. 
It will work fine for a few minutes but soon freezes and will not let 
me open or close files or open or close the program. I would 
appreciate any help. Thanks

Morgan





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


Re: [PD] Finding $0 and dealing with it in messages

2009-11-13 Thread Phil Stone

Roman Haefeli wrote:

This is obviously a loop. All this has been said and proposed before in the
thread [1], that has been posted by alex porres a few posts back. Sorry for
not having brought any new perspectives into the discussion, but having just
repeated what has been said already.
  


Hi Roman,


I think the fact that this is an eternally-recurring topic points to 
just how irritating this one little foible of Pd is -- it's confusing to 
newbies, and it's annoying to more experienced programmers.



I want to address the point you brought up in the first message:


$0 in messages is only special in the sense, that it has no meaning at all.
it wouldn't make it less special to use it as a container for canvas
identifier in message boxes. $-variables in objects have a different meaning
from $-variables in message boxes, no matter what. I understand, that it
would make patching often a lot easier, but conceptually it would be
exceptional to make $0 in message-boxes be replaced by the
canvas-identifier, while all other $n-variables in message-boxes get
replaced by the n-th element of the incoming list.


But $0 is exceptional in *all* cases!  Its use in objects has a very 
different meaning than the use of $1, $2 in objects.  Yet no one 
calls for eliminating $0 from object boxes -- why is the same argument 
repeated over and over as justification for its prohibition in message 
boxes?  I just don't understand this.



If only (as many have said) $0 had been written as #0 or something 
else completely un-encumbered with ideas about what $ must mean in Pd.




The only thing i don't really get: Why seems there some agreement, that
using $0 to get the selector could be confusing?



Well, I think that would make things even worse - further muddying the 
waters, as it were, by adding yet another meaning to the dollar-sign.  I 
don't see it as any more consistent or pure, given the unique role 
that $0 has in *all* cases.



When all is said and done, things in the Pd world will go on as they 
have, and we won't really suffer because of this one little grain of 
sand in our shell.  But we probably will continue to discuss it every 
few months!



Best,

Phil
http://www.pkstonemusic.com/pubmusic.html

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


Re: [PD] Finding $0 and dealing with it in messages

2009-11-13 Thread Phil Stone

IOhannes m zmoelnig wrote:

Phil Stone wrote:

  

I think the fact that this is an eternally-recurring topic points to
just how irritating this one little foible of Pd is -- it's confusing to
newbies, 



i agree

  

and it's annoying to more experienced programmers.



but i can't follow here .-)
  


Well, I'm annoyed.  :-)  But I think I'll get over it.


But $0 is exceptional in *all* cases!  Its use in objects has a very
different meaning than the use of $1, $2 in objects.  Yet no one
calls for eliminating $0 from object boxes -- why is the same argument
  


actually i do.
obviously it would break everything, so i won't say that loud.

snip
as explained lengthily months ago, i still don't think that messages
should have any notion of the surrounding patch.
  


I'd be interested in reading that, though I haven't been able to find 
the post yet.  Do you have a reference?


Currently, the only time I've needed to get $0 into a message is for 
dynamic patching.  Since this practice is an unloved bastard child of 
Pd, it's unlikely I'll get anywhere advocating for making it easier.  
Nevertheless, the less-readable patches (as if dynamic patches aren't 
obscure enough!) that result from the contortions needed to get $0 into 
the message annoy me, and tempt me to write bad, name-clash-ripe dynamic 
objects.



Best,

Phil
http://www.pkstonemusic.com/pubmusic.html

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


Re: [PD] Finding $0 and dealing with it in messages

2009-11-13 Thread Phil Stone

Roman Haefeli wrote:

While definitely understanding your irritation, the only point of your
writing i was able to find is that it would make it 'easier'.
  


No, it's that the idea of $0 = special case is only used when talking 
about message boxes; $0 is also a special case in object boxes, yet it 
is accepted there.  Thus, I find this argument inconsistent.


I am quite willing to bear the continued burden of coaxing $0 into 
messages for dynamic patching (I simply have no choice).  I would just 
like to see the reasoning against $0 in message boxes be less specious, 
and therefore less confusing to the overall issue.



I definitely cannot support the idea of making one special case (that
arises a lot, i admit) easier, while disregarding completely the
concepts and consistency.
  


As I said, it's the very *inconsistency* of this argument that bothers me.


Phil
http://www.pkstonemusic.com/pubmusic.html

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


Re: [PD] Finding $0 and dealing with it in messages

2009-11-13 Thread Phil Stone

Matt Barber wrote:

I am saying two things:

1) Without $0 or something similar, the only way to guarantee similar
locality would be through use of $1 or $n -- you would have to
manually give each instance an instance number.  Sometimes you even
want to be able to group instances in the way you suggested.  I'm not
sure of the history of Pd, but if $0 was implemented after
abstractions with arguments, then manually assigning locality was
probably necessary.

2) Sometimes $0 NEEDS to be inherited (probably as $1 or some such) by
various helper abstractions within a larger, higher-functioning
abstraction.  This is especially the case with dynamic patching --
imagine, say, a bell synthesis patch using a dynamically created
bank of enveloped oscillator abstractions.  In that case, you'd want
each oscillator abstraction to [throw~] to the same [catch~] within
the parent instrument abstraction.  To do this, you could have
[catch~ $0-out] within the parent, and [throw $1-out] within each
child, while passing the parent's $0 to the children.

So all I'm saying is that $1-$n often plays a really important role in
locality, in addition to a number of other things, and to me it seems
almost natural to use $0 as an analogy for this role.


Good points, all.


I personally
love the idea of using $0 as the selector of the abstraction -- its
name or filename, and $$ as its ID, but too late for that now.
  


I can't disagree with this, either.  Though, in the spirit of wishful 
thinking, I'll go it one further: abstraction arguments would ideally 
have a different form than message arguments.  E.g. #0...#n for message 
args., and $0...$n for abstraction args. (or, the other way around, 
whatever)...  Then (and only then, I think) would this discussion not be 
on auto-repeat here.




Phil
http://www.pkstonemusic.com/pubmusic.html

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


Re: [PD] Finding $0 and dealing with it in messages

2009-11-13 Thread Phil Stone

Roman Haefeli wrote:

Finally, we agree. I also think, that using $ twice is confusing, when
the uses are so different.

Personally, i wouldn't mind, if Pd would be changed instantaneously
while breaking backwards compatibility. But i don't think, that it is
realistic.

roman
  


Actually, all it would take to convert all old patches to this new form 
is one line of perl with a well-constructed regular expression.  I 
agree, still, that it is probably not going to happen.



Phil



On Fri, 2009-11-13 at 13:16 -0800, Phil Stone wrote:
  

Matt Barber wrote:


I am saying two things:

1) Without $0 or something similar, the only way to guarantee similar
locality would be through use of $1 or $n -- you would have to
manually give each instance an instance number.  Sometimes you even
want to be able to group instances in the way you suggested.  I'm not
sure of the history of Pd, but if $0 was implemented after
abstractions with arguments, then manually assigning locality was
probably necessary.

2) Sometimes $0 NEEDS to be inherited (probably as $1 or some such) by
various helper abstractions within a larger, higher-functioning
abstraction.  This is especially the case with dynamic patching --
imagine, say, a bell synthesis patch using a dynamically created
bank of enveloped oscillator abstractions.  In that case, you'd want
each oscillator abstraction to [throw~] to the same [catch~] within
the parent instrument abstraction.  To do this, you could have
[catch~ $0-out] within the parent, and [throw $1-out] within each
child, while passing the parent's $0 to the children.

So all I'm saying is that $1-$n often plays a really important role in
locality, in addition to a number of other things, and to me it seems
almost natural to use $0 as an analogy for this role.
  

Good points, all.



I personally
love the idea of using $0 as the selector of the abstraction -- its
name or filename, and $$ as its ID, but too late for that now.
  
  
I can't disagree with this, either.  Though, in the spirit of wishful 
thinking, I'll go it one further: abstraction arguments would ideally 
have a different form than message arguments.  E.g. #0...#n for message 
args., and $0...$n for abstraction args. (or, the other way around, 
whatever)...


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


Re: [PD] Finding $0 and dealing with it in messages

2009-11-12 Thread Phil Stone

Mathieu Bouchard wrote:

On Fri, 13 Nov 2009, Frank Barknecht wrote:

Alexandre Porres hat gesagt: // Alexandre Porres wrote:

But I totally disagree, I have been teaching a lot basic Pd around, and
people always get confused and think they can just throw $0 in 
messages.
That may be because your students assume, that $1 in a message box is 
the same

as $1 in an object box when in fact it's something different.


That may be because you assume that objectboxes' $0 must have 
something to do with $1,$2,$3,... when in fact it's something different.


  $3 stands for ce_argv[2]
  $2 stands for ce_argv[1]
  $1 stands for ce_argv[0]
  $0 stands for ce_dollarzero

it's a special case no matter what.


Right.  Which neatly brings the question back around to why can't $0 be 
used in message boxes?  I've said this before (to no avail): it is well 
understood that $0 has no meaning in *messages* -- however, this is not 
a good reason why $0 can't be used in *message boxes.*


Since 1024-foo (where 1024 represents the canvas-identifier), *does* 
have meaning in messages, why must we jump through (admittedly minor, 
but still quite annoying) hoops just to get that canvas-identifier into 
a message?


It probably belongs in the some things will never change in Pd 
category; therefore we must resign ourselves to this discussion 
re-appearing on a regular basis.



Phil Stone
http://www.pkstonemusic.com/pubmusic.html





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


[PD] OS X 10.6

2009-10-30 Thread Phil Stone

Hello,

Has anyone had any luck compiling Pd-Extended for Snow Leopard?  Is it 
close to showing up in the nightly builds?


I ask because I may have to switch to 10.6 soon.


Thanks,

Phil Stone

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


Re: [PD] very small form-factor PC for running PD

2009-10-22 Thread Phil Stone
Aside from the 12v capability, I'd have said the Mac Mini...if you're 
into that sort of thing.



Phil Stone


Hans-Christoph Steiner wrote:


You could use a Nokia N810 for that.  It does have USB, but not 
powered, so you'd need to include a powered hub.


Beagleboard is another option:
http://beagleboard.org/

.hc

On Oct 22, 2009, at 7:16 PM, Martin Dupras wrote:


For a project I'm working on, I need a very small computer capable or
running PD in an enclosure ideally smaller than 20cmx15cm.

It doesn't need to have a screen, but it needs to have at least two
USB ports and be able to be run on 12v DC or lower.

Has anyone come across anything like this?

Cheers,

- martin

___
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





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


Re: [PD] Feedback discussion

2009-09-15 Thread Phil Stone
Of course, feedback does not require simultaneity...nor does it always 
imply an acoustic system (though I'm guessing that's what you're 
referring to, Derek).  One nice thing about those digital goblins is 
that they can feed-back *information* about the music. More 
interestingly, they can feed-back *permuted* information about the 
music, kind of like a delay line with ideas of its own.



Phil Stone
www.pkstonemusic.com


Derek Holzer wrote:
I can't really say from a supra-atomic standpoint I could agree with 
you, but I'd settle for the speed of light, or even the remotely 
distant figure of the response time of an op-amp. Which is quite a bit 
faster than your average blocksize or even a single discrete 
sample--assuming that a complex digital system like Pd could react 
effectively at single-sample speed.


Really though, must everything really be so complicated Mathieu? Not 
everything can be so easily described with mathematics. I also like to 
sip single malt whiskey during the last evening hours of a summer 
headed towards autumn...


Sorry to stir up the digital goblins, folks. I merely wanted to share 
my (unsatisfactory) experiences with feedback scenarios in Pd. Your 
Mileage May Vary.


D.

Mathieu Bouchard wrote:

Instantaneousness is a myth. It does not exist in nature. 





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


Re: [PD] implications of pd~ for 'poly' objects

2009-09-09 Thread Phil Stone
Thanks for clarifying that, Hans, and for pointing out the issue with 
threads, IOhannes.  One shouldn't be profligate with [pd~]s, strewing 
them all about and expecting performance gains -- therefore, one [pd~] 
per voice instance in a [polypoly] patch is probably not a good idea 
until we have 64-core CPUs as a regular thing! :-).


However, with judicious use, [pd~] seems like it will allow Pd to scale 
to future processor design, and that's a good thing.


Thanks again,

Phil


Hans-Christoph Steiner wrote:


[snip]  As for manually managing pd~, I mean just manually creating as 
many pd~ instances as you have cores.


.hc



IOhannes m zmoelnig wrote:

Phil Stone wrote:

Hi Hans,

Thanks for replying.  I don't quite understand what you mean by 
manually manage.  As far as I know, without something like [pd~], 
there's no way to divide up and assign the Pd audio process to more 
than one core.  Half of the cores on a quad-core are therefore 
useless to Pd (accounting for the fact that the graphical process 
gets its own core).


the problem is, that poly-class objects are usually meant for _many_ 
objects (10+; i'm only repeating here what hans has already said).

[pd~] will fork a new thread for each of it's instances.
when doing multi-core processing (and this is really the only thing 
pd~ is good for; e.g .it's not good if you want to have different 
priorities / asynchronous processing), you usually don't want to 
create more threads than you have cores.
why? performance reasons! if you create e.g. 1000 threads for 1000 
instances of [doodle~] on a quad-core machine, your computer will 
spend more time handling context-switches and the like (that is: the 
overhead for managing the threads) than doing the actual job.
as a rule of thumb, the optimum number of threads is about the 
number of cores you want to use.
since what is sold to customers as multi-core processors usually 
does not involve more than 4 cores, the best (though probably not 
the most comfortable) way to assign work to the cores from within Pd 
is doing it manually

fmgasdr.#
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




 



I have the audacity to believe that peoples everywhere can have three 
meals a day for their bodies, education and culture for their minds, 
and dignity, equality and freedom for their spirits.  - Martin 
Luther King, Jr.




___
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] implications of pd~ for 'poly' objects

2009-09-08 Thread Phil Stone

Hello all,

I have skimmed Miller's paper from Pd-con about [pd~], and it looks like 
it has potential for taking advantage of multiple-core CPUs.  I need to 
read it in a little more detail to digest it fully, but I'm wondering 
(and this is directed mostly at Frank B.): could [polypoly] and/or 
[nqpoly] use [pd~] for each voice/replicated-patch instance?



Phil Stone
www.pkstonemusic.com



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


Re: [PD] implications of pd~ for 'poly' objects

2009-09-08 Thread Phil Stone

Hi Hans,

Thanks for replying.  I don't quite understand what you mean by 
manually manage.  As far as I know, without something like [pd~], 
there's no way to divide up and assign the Pd audio process to more than 
one core.  Half of the cores on a quad-core are therefore useless to Pd 
(accounting for the fact that the graphical process gets its own core).


Phil


Hans-Christoph Steiner wrote:


It would definitely be possible to write a pdpoly~ but usually it 
would be easier to manually manage 2-4 instances.  Few people have 
more than 4 cores.  I see those poly objects as useful for 10+ and 
make managing 100s or 1000s possible.


.hc

On Sep 8, 2009, at 1:24 PM, Phil Stone wrote:


Hello all,

I have skimmed Miller's paper from Pd-con about [pd~], and it looks 
like it has potential for taking advantage of multiple-core CPUs.  I 
need to read it in a little more detail to digest it fully, but I'm 
wondering (and this is directed mostly at Frank B.): could [polypoly] 
and/or [nqpoly] use [pd~] for each voice/replicated-patch instance?



Phil Stone
www.pkstonemusic.com



___
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


[PD] another dynamic patching question

2009-09-03 Thread Phil Stone

Hi again,

I'm happily creating subpatches and filling them with dynamic subpatches 
(thanks again, Jonathan), but now I'm stuck on something more subtle. 
I'm doing something like this:


[b]
|
[symbol G]
|
[; pd-exp-$1 msg 20 235 /analysis/level/$1; (   



to dynamically add a [/analysis/level/G (  message box to subpatch 
'exp-G'.  However, what I really want that message box to say is:


[/analysis/level/G $1(

so I can do something useful with that message.  How do I get '$1' into 
that message box, dynamically?




Phil



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


Re: [PD] another dynamic patching question

2009-09-03 Thread Phil Stone
Brilliant hack, Jack - thanks a million!   Thanks for your suggestion, 
too, dmotd.



Phil


Jack wrote:

Hello Phil,
See the patch attached
++

Jack


Le mercredi 02 septembre 2009 à 22:09 -0700, Phil Stone a écrit :
  

Hi again,

I'm happily creating subpatches and filling them with dynamic subpatches 
(thanks again, Jonathan), but now I'm stuck on something more subtle. 
I'm doing something like this:


[b]
|
[symbol G]
|
[; pd-exp-$1 msg 20 235 /analysis/level/$1; (   



to dynamically add a [/analysis/level/G (  message box to subpatch 
'exp-G'.  However, what I really want that message box to say is:


[/analysis/level/G $1(

so I can do something useful with that message.  How do I get '$1' into 
that message box, dynamically?




Phil



___
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] dynamic subpatch creation

2009-09-02 Thread Phil Stone

Hello all,

I'm playing with dynamic object creation, and so far have figured out 
how to dynamically instantiate objects inside a subpatch and connect 
them up.  Now I'm trying to dynamically create subpatches inside of that 
subpatch, and I thought I could do this by sending canvas/ 
restore... messages to the subpatch in the appropriate order.  When I 
try this, I crash Pd.  Now, it may be that I'm not forming the messages 
correctly, but before I wander down that potentially-primrose path of 
debugging, I'm wondering if what I'm doing is possible at all.


This is the message I'm trying to send when Pd crashes ($1 contains the 
subpatch's name -- I know this is correct from earlier experiments that 
didn't use canvas/restore):


;
$1 canvas 5 5 362 348 f_instance 0;
$1 obj 29 86 routeOSC /name;
$1 obj 29 111 routeOSC /f /q;
$1 obj 22 160 bp~;
$1 obj 22 195 *~ 0.0002;
$1 obj 22 224 env~ 8192;
$1 obj 22 252 int;
$1 msg 22 278 /fout/lev/name pd-1010-dfb;
$1 connect 1 0 6 0;
$1 connect 2 0 4 0;
$1 connect 4 0 5 0;
$1 connect 5 0 6 1;
$1 connect 5 1 6 2;
$1 connect 6 0 7 0;
$1 connect 7 0 8 0;
$1 connect 8 0 9 0;
$1 connect 9 0 10 0;
$1 connect 10 0 3 0;
$1 restore 127 223 pd f_instance;

So, is it the canvas/restore messages that are crashing Pd, and if so, 
is there some other way to dynamically created subpatches inside another 
subpatch?


Thanks for reading,

Phil Stone
www.pkstonemusic.com


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


Re: [PD] dynamic subpatch creation

2009-09-02 Thread Phil Stone

Thanks, Jonathan.  That's just what I needed.


Phil


Jonathan Wilkes wrote:
If you dynamically created a subpatch named my_subpatch, then to 
dynamically create a subpatch within that use:


[obj 0 0 pd nested_subpatch(
|
[s pd-my_subpatch]

-Jonathan

--- On Thu, 9/3/09, Phil Stone pkst...@ucdavis.edu wrote:

  

From: Phil Stone pkst...@ucdavis.edu
Subject: [PD] dynamic  subpatch creation
To: PD list pd-list@iem.at
Date: Thursday, September 3, 2009, 1:01 AM
Hello all,

I'm playing with dynamic object creation, and so far have
figured out how to dynamically instantiate objects inside a
subpatch and connect them up.  Now I'm trying to
dynamically create subpatches inside of that subpatch, and I
thought I could do this by sending canvas/
restore... messages to the subpatch in the appropriate
order.  When I try this, I crash Pd.  Now, it may
be that I'm not forming the messages correctly, but before I
wander down that potentially-primrose path of debugging, I'm
wondering if what I'm doing is possible at all.

This is the message I'm trying to send when Pd crashes ($1
contains the subpatch's name -- I know this is correct from
earlier experiments that didn't use canvas/restore):

;
$1 canvas 5 5 362 348 f_instance 0;
$1 obj 29 86 routeOSC /name;
$1 obj 29 111 routeOSC /f /q;
$1 obj 22 160 bp~;
$1 obj 22 195 *~ 0.0002;
$1 obj 22 224 env~ 8192;
$1 obj 22 252 int;
$1 msg 22 278 /fout/lev/name pd-1010-dfb;
$1 connect 1 0 6 0;
$1 connect 2 0 4 0;
$1 connect 4 0 5 0;
$1 connect 5 0 6 1;
$1 connect 5 1 6 2;
$1 connect 6 0 7 0;
$1 connect 7 0 8 0;
$1 connect 8 0 9 0;
$1 connect 9 0 10 0;
$1 connect 10 0 3 0;
$1 restore 127 223 pd f_instance;

So, is it the canvas/restore messages that are crashing Pd,
and if so, is there some other way to dynamically created
subpatches inside another subpatch?

Thanks for reading,

Phil Stone
www.pkstonemusic.com


___
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] Hot inlet position

2009-08-20 Thread Phil Stone

Hi Gabriel,

Projects need excellent criticism; they become moribund without it.  
Matju's understanding of Pd is deep and broad, and he's not just making 
noise -- the things of which he speaks are always interesting to me, 
because they give insight into the inner workings of Pd.


It's easy to hear hostility in this text medium, when in reality it's 
probably just passion.



Phil


Gabriel Vinazza wrote:

I don't think Pd is an instrument, not in the sense you seem to
understand something is it.

It seems you don't have much to do or your job is not so exciting like
fixing your deficiencies by spiting those horrible arguments to people
that have more noble objectives.

You can hear yourself now, I won't reply.



On Thu, Aug 20, 2009 at 4:22 PM, Mathieu Bouchardma...@artengine.ca wrote:
  

On Thu, 20 Aug 2009, Gabriel Vinazza wrote:



Once more, as an artist, I know that the freedom is on my mind... so I can
make music even with a spoon.
  

Spoons are a traditional percussion instrument in my culture. The idea that
music can be made with a spoon is thus not only normal to me, it's also very
old-fashioned.



I just wanted to say that Pd is a beatiful spoon.
  

I hope that it can be used as much more than that. I mean, there are all
those sophisticated devices that in the end got used as doorstops and
paperweights, and I don't wish them that. I justed want to say that Pd is an
excellent kind of Pd (sic), that can be used in terms of what it is instead
of whatever else we like to compare it to.

(comparisons also become more legitimate when you carefully select the
object compared to, according to the number and depth of its
similarities...)

And if ideally Pd should be just a musical instrument that you only have
to tune and play, it's only to go with those musicians who ideally should
understand the breadth and depth of Pd's potential, but in practice don't.

 _ _ __ ___ _  _ _ ...
| Mathieu Bouchard - tél:+1.514.383.3801, Montréal, Québec



___
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-announce] metastudio 3 CRITICAL update

2009-08-18 Thread Phil Stone
I'm sorry if I missed it in an earlier thread, Ed, but what is this 
svf_f1~ that you speak of?  I've been using svf~ (many instances at 
once, in fact) for a couple of years without crashes, though sometimes 
the CPU climbs a bit when no sound is being made -- but again, no crashes.



Phil Stone
pkstonemusic.com



Ed Kelly wrote:

Hi all,

I've updated the metastudio packages with the old svf~ external in the drumsynths (clinok~, clinoker~ and fmf_perc~) and svf_fl~. 
The bsaylor/svf~ external has problems - denormals cause the filter to max out the CPU and will crash any patch mid-preformance. I also found this problem with moog~ (in moog_fl~) so watch out for it crashing your patch! If it does, I recommend switching to svf_fl~ for a dynamic filter.


This is a critical update, so if you're using metastudio then head over to
http://sharktracks.co.uk/puredata
And save yourself some future embarrassment!

Enjoy!
Ed


  



___
Pd-announce mailing list
pd-annou...@iem.at
http://lists.puredata.info/listinfo/pd-announce

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

  



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


Re: [PD] HID problem in Xubuntu.

2009-07-15 Thread Phil Stone
I have a similar, but slightly different, problem on OS X  (10.4, 
Macbook pro).  A Logitech Marble Mouse (trackball) shows up as device 0, 
but I can't get any data out of it.  The trackpad, on the other hand, is 
fully accessible through [hid].  Any ideas?



Phil



Hans-Christoph Steiner wrote:


Chances are that the trackpad is an USB device, but just internal. 
 But I don't think that's the issue.  I think in recent versions of 
Ubuntu, the X server or related process grabs the keyboard and mice 
using exclusive access.  You have to tell the X server to not use the 
mice that you want to use with [hid].  Check the archives, there is 
quite a bit of discussion about it.  It would be great to have a wiki 
page about this...


.hc

On Jul 15, 2009, at 12:26 PM, Diego Azar wrote:


Hi Simon,

Thanks for the fast response. No, it isn't. It's the standard  
synaptic touchpad that comes with many laptops.


Diego.

--- On *Wed, 7/15/09, Simon Wise /simonzw...@gmail.com 
mailto:simonzw...@gmail.com/* wrote:



From: Simon Wise simonzw...@gmail.com mailto:simonzw...@gmail.com
Subject: Re: [PD] HID problem in Xubuntu.
To: Diego Azar dazar...@yahoo.com mailto:dazar...@yahoo.com
Cc: PD-List pd-list@iem.at mailto:pd-list@iem.at
Date: Wednesday, July 15, 2009, 11:14 AM

Diego Azar wrote:
 Hi,

 I'm trying to use de hid librari in Xubuntu.
 I installed pd-hid.deb package without trouble and everything
works perfect (usb mouse, keyboard, etc) except for the touchpad.
It's not a permission issue, i've already gave permission to
/dev/input/event0-9 and /dev/input/mouse0-2.

is your touchpad a USB HID device?

Simon


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








Free software means you control what your computer does. Non-free 
software means someone else controls that, and to some extent controls 
you. - Richard M. Stallman





___
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] xapian search engine for Pd

2009-05-18 Thread Phil Stone

Hi Hans,

I'm a little unclear, would this replace the find function on the 
find menu?  If so, that would be wonderful; the current find has a 
serious drawback in that it can't find partial object names, neither can 
it find names containing $0; these two attributes combine to make it 
impossible to track down objects named similarly to '$0-foo'.  I 
understand the issue with $0, being that it is replaced with a generated 
number, but partial-string search would be a fantastic improvement.



Phil



Hans-Christoph Steiner wrote:


Hey,

I've been thinking for a while that Pd really needs a good built-in 
search function.  I just found this Xapian search library that has 
good Tcl bindings, anyone ever used it?


I suppose it could also be implemented in C in 'pd' rather than in Tcl 
in 'pd-gui'.  It seems like a pd-gui thing tho.


.hc

 



As we enjoy great advantages from inventions of others, we should be 
glad of an opportunity to serve others by any invention of ours; and 
this we should do freely and generously. - Benjamin Franklin




___
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-extended 0.41.4 release candidate 1

2009-05-14 Thread Phil Stone

Mac OS X 10.4 i386.  Cannot reproduce.


Phil


brandon zeeb wrote:

Mac OS X 10.5 i386.  Has anyone else been seeing this?


On Thu, May 14, 2009 at 10:52 AM, Hans-Christoph Steiner 
h...@at.or.at mailto:h...@at.or.at 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
h...@at.or.at mailto:h...@at.or.at 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 mailto: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
  



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


Re: [PD] startup makes crash + .plist

2009-04-13 Thread Phil Stone

Marco Donnarumma wrote:

Hi list,
i have an Urgent problem i realy hope someone could help me quickly. 
This is the last day for me to prepare a performance for a live show 
and Pd doesn't open anymore. :(

The story
i installed pdmtl library (from zip file on MAC) following the video 
tutorial. I modified Pd preferences (path and startup), close Pd and 
when i tried to relaunch it, it open a blank consolle and then crash 
immediately without loading any library (or at least i don-t see in 
the consolle anything loading).

so it doesn-t allow me to modify anymore the preferences.

i disinstalled Pd and reinstalled twice but it keeps on with the same 
behaviour described above (as far as i know the keys are still stored 
in the system).


This suggests that the problem lies in the plist file in 
~/Library/Preferences/, as when you re-install Pd, you should be 
re-installing the default preferences as well (i.e., the plist that 
lives within the application package contents).   Are you re-installing 
a completely fresh copy?


how can i modify the org.puredata.pd.plist file from terminal? i used 
the command defaults read org.puredata.pd and i see the error in in 
the flags startup - but i cannot sort out how to modify it from 
terminal... (sorry for the ignorance but im not used to manage terminal)
i also look for org.puredata.pd.plist in |~/Library/Preferences/ |but 
the file doens't look to be there.


That's very odd.  There should be org.puredata.pd.plist (as well as 
org.puredata.pd.wish.pdlist, but ignore that) in 
~/Library/Preferences/.  It would seem to be the only explanation for 
the persistence of the problem.  By the way, if and when you find 
org.puredata.pd.plist, just double-click it, and a property editing 
program will run.  Alternatively, just delete it org.puredata.pd.plist 
from ~/Library/Preferences/ -- that will get you back to default 
behavior.  See here for more info:  http://puredata.info/docs/faq/pdsettings



or how i disinstall Pd in order to reset all preferences?
or any other suggestion is really appreciated, i still have a hell of 
work to do on the performance patch.  :


I hope this helps...I'll be around for the next ten hours or so, so 
write back if you're still stuck.  Good luck.



Phil


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


Re: [PD] pd-extended font paths

2009-03-27 Thread Phil Stone
Oh, Gem, of course.  So when I'm not using Gem, I can safely do without 
those eight path elements, then?


Also, while I'm being a whinging pest...it's impossible to add a path 
element that lives inside the pd-extended.app folder using the path 
dialog.  This is because OS X makes the .app package not look like a 
folder, I suppose, but it's unfortunate nevertheless.  Off to edit the 
.plist, I go.


Thanks, Hans.


Phil



Hans-Christoph Steiner wrote:


Well, it makes it easier to find fonts.  That's the reason.  I suppose 
most people aren't using fonts much with Pd.  If [declare -path] works 
for Gem fonts, then I would consider removing some from the default 
prefs.


.hc

On Mar 26, 2009, at 9:23 PM, Phil Stone wrote:

Do there really need to be eight different font-related entries in 
the path list for Pd-extended on OS X?  If so, why?



Phil

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




 



Computer science is no more related to the computer than astronomy is 
related to the telescope.  -Edsger Dykstra







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


[PD] pd-extended font paths

2009-03-26 Thread Phil Stone
Do there really need to be eight different font-related entries in the 
path list for Pd-extended on OS X?  If so, why?



Phil

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


Re: [PD] C::NTR::L - AV+physical computing processing

2009-03-16 Thread Phil Stone
This is very impressive, Marco. What grabs me immediately is that you 
are demo'ing with bass (nice Steiny or Hohner, btw) - lower-frequency 
instruments are particularly difficult for pitch-detection.  What is the 
latency?  It's hard to tell from the video, but it looks pretty 
responsive.  How accurate?


I've been waiting a long time to plug my bass into my Pd stuff.  I will 
be happy to test anything, and also to help with the code cleanup, if it 
lies within my area of competence.


Nice work!


Phil Stone
www.pkstonemusic.com


Marco Donnarumma wrote:

Hi all,
i'm really glad to share with the list my latest project, cause 
without the help of everybody here i wouldn't be able to speak about 
it now..  ;)
C::NTR::L is a software, naturally Pd-based, for audiovisual live 
performances exploiting physical computing. It transforms a standard 
musical instrument in an augmented tool to control real-time 
audio-video processing, without the need of any external device 
(damned expensive) or MIDI. You play your score and to each note is 
connected an audio, video or audiovisual fx, and you can connect 
whatever you want with whatever you desire. It's Pd!


C::NTR::L is Cross-Platform for Mac, Linux and Windows (so far i've 
been able to keep the same patch working on all platform, too lucky...)
By now it has been succesfully tested with electric bass guitar, 
guitar, piano (only two octaves working right now), accordion and trumpet.
I conceived this project almost three years ago (when i was just 
starting to get aware of the existence of Pd). I was playing the bass 
guitar trying to control videos with resolume :( and sound with 
AudioMulch. wow.. i cannot figure out how!
anyway, since my competences and passion for Pd grew up, i decided to 
make the whole project become a software for public use and to do it 
exclusively focusing on Pd.
Today this is the result (I C::ntr::l Nature, my audiovisual 
performance for electric bass guitar and butterfly):


http://vimeo.com/2225345

I sent out a call for beta-testers on the most used 
audiovisual-related forums (Pd forum too), i fixed most of the bugs 
and someone is planning to do things with my lil creature.
  Now I'm planning the public release of version 1.2 Beta in the end 
of this month (if i won't be eated by my everyday job).


I'm writing to the list not only to let you know the news, but 
specially because i would like to know if there is anybody out there 
who has time and will to help me in the cleaning and further 
development of the code.

Being a webdesigner, usability and accessiblity are my first aims.
I've many ideas and many suggestions collected in my to-do list, but 
being alone, the development would be really slow, maybe even pointless.
I would be glad to answer to all questions, technical, conceptual and 
more... and to explain more in depth how C::NTR::L is working.
I know everybody is quite busy, infact i would be really glad also of 
some little help with some taks.


I'm also developing a new interface trying to make C::NTR::L 
user-friendly for real. But this is another issue that i also would 
like to discuss about with the list.
My idea, maybe pretty ingenuos, is to create a software for 
audiovisual performances so easy to use also for no-Pd'rs, that one 
would download Pd (and starting to familiarize with it) because of the 
interest towards C::NTR::L, or any other user-friendly software - 
unfortunately i don't see many around.
For sure it wouldn't happen with millions of people, but maybe it 
could help in the spreading of Pd, and OS multimedia creation.


further link (still have to update some contents, butthe most is 
there)


www.thesaddj.com/cntrl http://www.thesaddj.com/cntrl
www.thesaddj.com/icontrolnature http://www.thesaddj.com/icontrolnature

sorry for the very very long e-mail.
best




--
Marco Donnarumma aka The !S.A.D!



Multimedia Artist, Live Performer
Roma, IT

LAB: http://www.thesaddj.com | 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


Re: [PD] self-modifying and dynamic patching

2009-03-12 Thread Phil Stone
Good point; I assume you're going to emphasize the pitfalls of dynamic 
patching while you're at it, Derek?  I have a habit of opening up 
patches to see how they work, and if I can't read them because they're 
too messy, I'll move stuff around.  This is fine, unless it's a dynamic 
patch and I hit ctrl-s without thinking.  D'oh!  The initial state of 
a dynamic patch is critical to its correct function, and one has to 
think very carefully before saving changes.  I think I'm going to 
develop the habit of putting a large warning comment on any 
self-modifying patch.


Phil


IOhannes m zmoelnig wrote:
however, my experiences with abcde were the main reason i s did not 
touch self-modifying patches for years and years.
the lesson i learned was: never do self-modification in patches that 
other people will ever have to regularily use.
(the original phrase would have been never do self-modification in 
patches that other people will ever have to maintain; however, this 
might give the impression that chances are low that somebody else will 
really have to maintain a patch); in practice you pass 
maintainership to somebody as soon as you give them your patch: they 
will eventually start to modify it.



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


Re: [PD] self-modifying and dynamic patching

2009-03-12 Thread Phil Stone
I may not be thinking this through correctly, but how do you handle 
broken connections with inlets/outlets in the cleared subpatch?  I.e., 
the containing patch will lose its patch connections to the 
inlets/outlets of the subpatch if the sbupatch is cleared.


Phil


With certain clean patching habits it's not that bad. For example the original
nqpoly4 was rather messy because it did the dynamic patching in the abstraction
itself, used namcanvas for it and thus relied on a certain initial state. 


What I changed was to remove namcanvas, do the dynamic patching inside of a
subpatch and started with clearing that patch from a loadbang. 


A loadbanged [; pd-subpatch clear( IMO is mandatory for dynamic patching in
abstractions. Even if it's saved with old content that will be removed on the
next load.

Another use for dynamic patching is automatically creating parts of static
patches.  For example my piece Frost on the GOSUB10 netlabel release uses 60
resonant bandpass filters driven by noise bursts. Of course I didn't patch all
of these manually and changed their arguments, instead I used dynamic patching
to generate the filter bank once, which then was saved into a static patch.

In that use case, one should not use a loadbang'd clear of course. ;)

To add another example: I use dynamic patching in the list-abs-intro.pd patch
to generate a list of all list-abs in the [list]-abs collection.

Ciao
  



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


Re: [PD] self-modifying and dynamic patching

2009-03-11 Thread Phil Stone

Hi Derek,

Maybe a very simple example would be good.  I have an Ozone 
MIDI-controller, and it has eight knobs, which send out continuous 
controller data on 8 different MIDI CC numbers.  Now, [ctlin] (MIDI 
control input) doesn't have settable arguments -- only creation args., 
so I racked my brains trying to figure out how to make an object that 
would take a knob number argument, 1-8, convert that number to the 
corresponding controller number, and watch that controller number with 
[ctlin].


(Admittedly, it would have been easy to create [Ozknob1]...[Ozknob8] 
objects, but this reeked of kludge to my sensibilities; neither did I 
consider it elegant to use a [ctlin] for each knob that watched *all* 
controller data, then [route]d the data from the desired control number 
-- I wanted the pre-filtering to be done by [ctlin], if possible).


The more generalized problem is this: take a creation argument of an 
abstraction, *do something with it*, then get it into the creation 
argument of a contained abstraction.


Nothing I tried worked, until I took the attached dynamic approach.


Phil Stone
www.pkstonemusic.com



Derek Holzer wrote:
Would like to show some examples of dynamic and self-modifying Pd 
patches during a workshop here in Berlin. I know there are some in the 
archives (and maybe on people's HDs) somewhere, but damned if I can 
find them. Links to previkous posts or new examples welcome!


best!
Derek



#N canvas 676 96 394 341 10;
#X obj 8 105 21;
#X obj 34 105 22;
#X obj 60 105 23;
#X obj 86 105 24;
#X obj 112 105 25;
#X obj 138 105 26;
#X obj 164 105 27;
#X obj 189 105 28;
#X obj 37 74 select 1 2 3 4 5 6 7 8;
#X obj 37 51 f \$1;
#X obj 37 6 loadbang;
#X obj 103 304 outlet;
#X text 8 149 Ozone mapping;
#X msg 237 93 2;
#X text 267 91 channel;
#X obj 37 28 t b b;
#X obj 102 158 pack f f;
#X text 110 16 Use: [OzKnob n] where n is the knob #;
#N canvas 0 22 210 111 \$0-oz_ctrlknob 0;
#X obj 28 72 outlet;
#X restore 103 272 pd \$0-oz_ctrlknob;
#X obj 102 218 s pd-\$0-oz_ctrlknob;
#X msg 102 187 obj 10 10 ctlin \$1 \$2 \, connect 1 0 0 0;
#X connect 0 0 16 0;
#X connect 1 0 16 0;
#X connect 2 0 16 0;
#X connect 3 0 16 0;
#X connect 4 0 16 0;
#X connect 5 0 16 0;
#X connect 6 0 16 0;
#X connect 7 0 16 0;
#X connect 8 0 0 0;
#X connect 8 1 1 0;
#X connect 8 2 2 0;
#X connect 8 3 3 0;
#X connect 8 4 4 0;
#X connect 8 5 5 0;
#X connect 8 6 6 0;
#X connect 8 7 7 0;
#X connect 9 0 8 0;
#X connect 10 0 15 0;
#X connect 13 0 16 1;
#X connect 15 0 9 0;
#X connect 15 1 13 0;
#X connect 16 0 20 0;
#X connect 18 0 11 0;
#X connect 20 0 19 0;
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


[PD] music made with Pd

2009-03-05 Thread Phil Stone
Hi,

I'm trying out this website called soundcloud.com, which seems to be a 
fairly decent way of sharing music without much nonsense.  Anyway, I 
uploaded a recent piece I made (completely with Pd, naturally!):

http://soundcloud.com/putahslim/intrinsic


Phil

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


Re: [PD] symbol anxiety

2009-02-24 Thread Phil Stone
Mathieu Bouchard wrote:
 On Mon, 23 Feb 2009, Roman Haefeli wrote:
 for instance, when using OSC, probably every message is a new symbol. 
 so i guess, it cannot be avoided, even if text processing is done 
 outside of pd, unless a string type is introduced (is that correct?).

 Every OSC target is a symbol, just like every receive-symbol is a 
 symbol; but furthermore, even hierarchical names like /foo/bar are 
 recorded as a single name that doesn't use foo and bar, instead of 
 using a list. Similarly, abstraction instances are _the_ way to flood 
 the table, as all the local receive-symbols and other local symbols 
 get multiplied by the number of instances.

 I proposed several solutions to this. Having deallocatable symbols 
 only is useful if you deallocate abstractions and reallocate them... 
 usually has to do with dynamic patching. The other solution would be 
 to make the symbol-table only a table of symbols, and have a separate 
 receiver-table, which would get accessed by ($0,symbol) pairs so that 
 the $0 doesn't get pasted inside of the symbol so that no more symbols 
 need be generated. That would be quite a major overhaul, but it's 
 pretty much the only real solution.

 I don't think that there's anything else in OSC that could be wasting 
 symbols. However, if you have a system where you use 100 OSC-paths 
 to represent an array of 100 numbers, you may be looking for trouble.

Since OSC messages have some value concatenated to the end, aren't they 
all potentially unique and therefore consumers of new symbols?  E.g.,  
/oscillator/frequency 440.0 and /oscillator/frequency 449.365 
require distinct symbols, don't they?  And to think I was worried about 
a little stopwatch!  :-)


Phil



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


Re: [PD] symbol anxiety

2009-02-24 Thread Phil Stone
Phil Stone wrote:
 Mathieu Bouchard wrote:
   
 On Mon, 23 Feb 2009, Roman Haefeli wrote:
 
 for instance, when using OSC, probably every message is a new symbol. 
 so i guess, it cannot be avoided, even if text processing is done 
 outside of pd, unless a string type is introduced (is that correct?).
   
 Every OSC target is a symbol, just like every receive-symbol is a 
 symbol; but furthermore, even hierarchical names like /foo/bar are 
 recorded as a single name that doesn't use foo and bar, instead of 
 using a list. Similarly, abstraction instances are _the_ way to flood 
 the table, as all the local receive-symbols and other local symbols 
 get multiplied by the number of instances.

 I proposed several solutions to this. Having deallocatable symbols 
 only is useful if you deallocate abstractions and reallocate them... 
 usually has to do with dynamic patching. The other solution would be 
 to make the symbol-table only a table of symbols, and have a separate 
 receiver-table, which would get accessed by ($0,symbol) pairs so that 
 the $0 doesn't get pasted inside of the symbol so that no more symbols 
 need be generated. That would be quite a major overhaul, but it's 
 pretty much the only real solution.

 I don't think that there's anything else in OSC that could be wasting 
 symbols. However, if you have a system where you use 100 OSC-paths 
 to represent an array of 100 numbers, you may be looking for trouble.
 

 Since OSC messages have some value concatenated to the end, aren't they 
 all potentially unique and therefore consumers of new symbols?  E.g.,  
 /oscillator/frequency 440.0 and /oscillator/frequency 449.365 
 require distinct symbols, don't they?  And to think I was worried about 
 a little stopwatch!  :-)

   
On further reflection, the OSC path (which *is* a symbol) and the value 
(which *may* be a symbol, but is more typically a float) are two list 
items, so the answer to my question is no, I think.


Phil


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


Re: [PD] symbol anxiety

2009-02-23 Thread Phil Stone

Frank Barknecht wrote:

Hallo,
Phil Stone hat gesagt: // Phil Stone wrote:

  
Attached is [maketime], a lovely little timer/stopwatch.  I've long 
since lost track of who made it, so I'm sorry can't give you 
well-deserved credit here.  At any rate, it creates *at least* one 
symbol per second (probably more, I'm not sure if each [makefilename] 
generates a new symbol, but I'm guessing it does).  This makes me 
nervous, as I have no idea what the symbol table capacity is, or how to 
see how full it is.  It seems likely that this abstraction would crash 
eventually.



A fix for this maketime would be to reuse the symbols :00 ... :59
for minutes and hours by using two [cnv] objects for these. Then you
would be able to let the clock run for decades before you get into
trouble with the symbol table.
  


I've pondered this, and can't figure out what you mean, unless you're 
suggesting having 60 canvases, one for each possible number?



I did re-work [maketime] a little.  Attached is a version (called 
[ps-stopwatch] that adds some features and only creates one symbol per 
second (plus one per minute, plus one per hour); the original created 
six per second.  The new one requires zexy's [makesymbol] (which can 
convert lists of numbers into a single symbol -- perfect for this 
application, but not in Vanilla-Pd, obviously).



Every table or receiver or route-selector etc. also is a symbol.


Yes, but except in some extreme examples of dynamic programming, this is 
a known quantity.  My anxiety comes from the memory leak behavior of 
long-running patches that dynamically create symbols (anything that does 
any sort of string handling is in this category, usually).  It would be 
so much better to have transient symbols for this sort of thing, but as 
Mathieu said, it sounds like this is not going to happen any time soon.



 So
while the implementation of the symbol table is suboptimal, in practice
it's not something you need to worry about too much. At least it should
not make you replace [route freq note] with [route 0 1] :-)
  


Just to see the magnitude of the issue, I made a little test patch 
(attached) called [symbol_pig].  It just creates symbols, very fast.  A 
very rough measurement based on watching resident memory increasing in 
bash's top command indicates that (on OS X 10.4), a megabyte is used up 
for approximately every 32,000 symbols.




Phil
#N canvas 0 22 450 300 10;
#X obj 109 47 metro 10;
#X obj 146 80 + 1;
#X obj 109 79 f 0;
#X obj 109 117 makefilename %d;
#X symbolatom 109 148 10 0 0 0 - - -;
#X obj 109 23 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X connect 0 0 2 0;
#X connect 1 0 2 1;
#X connect 2 0 1 0;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 5 0 0 0;

#N canvas 788 73 273 360 12;
#X declare -lib zexy;
#X obj 1 1 cnv 15 156 30 empty \$0-time_display 0:03:36 6 15 0 24 -1
-241291 0;
#X obj 71 224 + 1;
#X obj 37 223 f;
#X msg 163 56 0;
#X obj 163 1 loadbang;
#N canvas 337 282 345 318 sec-to-time-symbol 0;
#X obj 13 7 inlet;
#X obj 14 291 outlet;
#X obj 13 63 % 60;
#X obj 231 95 int;
#X obj 182 6 import zexy;
#X obj 95 124 change -1;
#X obj 95 72 / 60;
#X obj 231 69 / 3600;
#X obj 95 98 int;
#X obj 13 34 t f f f;
#X obj 231 121 change -1;
#X obj 231 177 makesymbol %s;
#X obj 95 208 list prepend;
#X obj 14 237 list prepend;
#X obj 95 150 % 60;
#X obj 14 264 makesymbol %s:%02s:%02s;
#X obj 95 177 makesymbol %02s;
#X obj 13 89 list;
#X obj 231 149 % 100;
#X connect 0 0 9 0;
#X connect 2 0 17 0;
#X connect 3 0 10 0;
#X connect 5 0 14 0;
#X connect 6 0 8 0;
#X connect 7 0 3 0;
#X connect 8 0 5 0;
#X connect 9 0 2 0;
#X connect 9 1 6 0;
#X connect 9 2 7 0;
#X connect 10 0 18 0;
#X connect 11 0 12 1;
#X connect 12 0 13 1;
#X connect 13 0 15 0;
#X connect 14 0 16 0;
#X connect 15 0 1 0;
#X connect 16 0 12 0;
#X connect 17 0 13 0;
#X connect 18 0 11 0;
#X restore 37 252 pd sec-to-time-symbol;
#X obj 3 46 r \$0-start;
#X obj 124 1 bng 14 250 50 0 \$0-start empty empty 17 7 0 10 -4034
-1 -1;
#X obj 124 17 bng 14 250 50 0 \$0-stop empty empty 17 7 0 10 -258113
-1 -1;
#X obj 141 9 bng 14 250 50 0 \$0-reset empty empty 17 7 0 10 -262144
-1 -1;
#X obj 176 29 r \$0-reset;
#X obj 80 46 r \$0-stop;
#X msg 3 71 1;
#X msg 80 71 0;
#X obj 37 121 f 0;
#X msg 199 130 -1;
#X obj 113 223 symbol -:--:--;
#X obj 37 150 metro 1000;
#X obj 37 289 list prepend;
#X obj 215 252 f \$0;
#X obj 163 81 t b b b f f b;
#X msg 37 317 \; \$1-time_display label \$2;
#X connect 1 0 2 1;
#X connect 2 0 1 0;
#X connect 2 0 5 0;
#X connect 3 0 20 0;
#X connect 4 0 3 0;
#X connect 5 0 18 0;
#X connect 6 0 12 0;
#X connect 10 0 3 0;
#X connect 11 0 13 0;
#X connect 12 0 14 0;
#X connect 13 0 14 0;
#X connect 14 0 17 0;
#X connect 15 0 1 0;
#X connect 16 0 18 0;
#X connect 17 0 2 0;
#X connect 18 0 21 0;
#X connect 19 0 18 1;
#X connect 20 0 14 0;
#X connect 20 1 16 0;
#X connect 20 2 15 0;
#X connect 20 3 2 0;
#X connect 20 4 17 0;
#X connect 20 5 19 0;
#X coords 0 -1 1 30 158 32 1 0 0

Re: [PD] symbol anxiety

2009-02-23 Thread Phil Stone
Frank Barknecht wrote:
 Hallo,
 Phil Stone hat gesagt: // Phil Stone wrote:

   
 Frank Barknecht wrote:
 
 A fix for this maketime would be to reuse the symbols :00 ... :59
 for minutes and hours by using two [cnv] objects for these. Then you
 would be able to let the clock run for decades before you get into
 trouble with the symbol table.
   
 I've pondered this, and can't figure out what you mean, unless you're  
 suggesting having 60 canvases, one for each possible number?
 

 No, only two canvases, one for minutes, one for seconds. See
 attachment. This way you only ever generate 60 different symbols. As
 existing symbols are reused, your memory usage doesn't grow after
 that.
   

Oh!  Very good.  I didn't realize that an identical symbol would get
re-used.  For completeness' sake, I will make a new [ps-stopwatch] that
does not leak (and is plain vanilla, to boot).


Cheers, Frank.


Phil


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


[PD] A non-leaky stopwatch

2009-02-23 Thread Phil Stone

Hello,

Attached is a stopwatch, derived from [maketime], that doesn't pollute 
the symbol table (i.e., indefinitely leak memory), thanks to Frank B.'s 
idea for keeping the symbols re-usable.


It has one-second grain, so it does not keep track of partial seconds 
between stops and restarts-with-no-reset.  However, it is quite accurate 
after resets and when first started.  I learned that metro sends an 
immediate bang when started -- something I had never paid attention to 
before.  So [ps-stopwatch] always skips the first bang out of [metro] 
(after reset) so that it isn't one second ahead.  It counts up to 99 
hours, 59 minutes, and 59 seconds, then wraps back to zero.


It would be easy to make this a finer-grain stopwatch, down to the 
inherent resolution of [metro].  However, for my purposes (timing of 
live performance) one-second grain is quite adequate, and not too 
CPU-hungry.


Thanks again to Frank for this elegant solution.


Phil Stone
www.pkstonemusic.com

#N canvas 788 73 452 547 10;
#X obj 1 1 cnv 15 32 30 empty \$0-hours empty 5 15 0 24 -1 -241291
0;
#X obj 34 1 cnv 15 46 30 empty \$0-minutes :01 3 15 0 24 -1 -241291
0;
#X obj 80 1 cnv 15 77 30 empty \$0-seconds :58 0 15 0 24 -1 -241291
0;
#X obj 163 1 loadbang;
#X obj 144 10 bng 12 250 50 0 \$0-reset empty empty 17 7 0 10 -262144
-1 -1;
#X obj 17 126 f 0;
#X msg 208 488 label \$1;
#X obj 208 515 s \$0-hours;
#X msg 279 488 label \$1;
#X obj 279 515 s \$0-minutes;
#X msg 360 488 label \$1;
#X obj 360 515 s \$0-seconds;
#X obj 307 149 symbol :--;
#X obj 297 173 symbol --;
#X obj 16 255 f 0;
#X obj 46 255 + 1;
#X obj 16 281 mod 60;
#X obj 16 333 f 0;
#X obj 46 333 + 1;
#X obj 16 354 mod 60;
#X obj 16 307 select 0;
#X obj 80 306 makefilename :%02d;
#X obj 82 383 makefilename :%02d;
#X obj 16 413 f 0;
#X obj 46 413 + 1;
#X obj 16 383 select 0;
#X obj 16 434 mod 99;
#X obj 82 458 makefilename %2d;
#X text 265 10 goes up to 99 hours \, then;
#X text 266 24 wraps back to zero.;
#X msg 53 126 0;
#X obj 176 23 r \$0-reset;
#X msg 130 199 0;
#X obj 16 228 spigot 0;
#X msg 84 181 0;
#X obj 17 181 t b a;
#X msg 17 204 1;
#X obj 215 252 symbol 0;
#X obj 225 273 symbol :00;
#X obj 215 200 spigot 0;
#X obj 163 48 t b b b b b b;
#X msg 250 172 0;
#X msg 220 172 1;
#X obj 215 224 t b b;
#X obj 173 173 sel 1;
#X text 265 57 doesn't remember partial;
#X text 265 71 seconds between restarts;
#X obj 17 154 metro 1000;
#X obj 125 8 tgl 17 0 \$0-onoff \$0-r-onoff empty 17 7 0 10 -24198
-1 -262144 1 1;
#X obj 355 292 s \$0-r-onoff;
#X msg 355 267 color \$1 0;
#X msg 354 243 13;
#X msg 384 243 16;
#X obj 16 34 r \$0-onoff;
#X obj 83 125 sel 0;
#X obj 16 57 t f f f;
#X obj 16 82 s \$0-color;
#X obj 354 196 r \$0-color;
#X obj 354 219 sel 0 1;
#X text 41 202 skip 1st bang;
#X connect 3 0 40 0;
#X connect 5 0 44 0;
#X connect 5 0 47 0;
#X connect 6 0 7 0;
#X connect 8 0 9 0;
#X connect 10 0 11 0;
#X connect 12 0 10 0;
#X connect 12 0 8 0;
#X connect 13 0 6 0;
#X connect 14 0 16 0;
#X connect 15 0 14 1;
#X connect 16 0 15 0;
#X connect 16 0 20 0;
#X connect 16 0 21 0;
#X connect 17 0 19 0;
#X connect 18 0 17 1;
#X connect 19 0 18 0;
#X connect 19 0 22 0;
#X connect 19 0 25 0;
#X connect 20 0 17 0;
#X connect 21 0 10 0;
#X connect 22 0 8 0;
#X connect 23 0 26 0;
#X connect 24 0 23 1;
#X connect 25 0 23 0;
#X connect 26 0 24 0;
#X connect 26 0 27 0;
#X connect 27 0 6 0;
#X connect 30 0 47 0;
#X connect 31 0 40 0;
#X connect 32 0 15 0;
#X connect 32 0 18 0;
#X connect 32 0 24 0;
#X connect 33 0 14 0;
#X connect 34 0 33 1;
#X connect 35 0 36 0;
#X connect 35 1 33 0;
#X connect 36 0 33 1;
#X connect 37 0 6 0;
#X connect 37 0 8 0;
#X connect 38 0 10 0;
#X connect 39 0 43 0;
#X connect 40 0 5 0;
#X connect 40 1 32 0;
#X connect 40 2 13 0;
#X connect 40 2 12 0;
#X connect 40 3 34 0;
#X connect 40 4 42 0;
#X connect 40 5 30 0;
#X connect 41 0 39 1;
#X connect 42 0 39 1;
#X connect 43 0 41 0;
#X connect 43 1 37 0;
#X connect 43 1 38 0;
#X connect 44 0 39 0;
#X connect 47 0 35 0;
#X connect 50 0 49 0;
#X connect 51 0 50 0;
#X connect 52 0 50 0;
#X connect 53 0 55 0;
#X connect 54 0 34 0;
#X connect 55 0 56 0;
#X connect 55 1 54 0;
#X connect 55 2 5 0;
#X connect 57 0 58 0;
#X connect 58 0 51 0;
#X connect 58 1 52 0;
#X coords 0 -1 1 30 158 32 1 0 0;
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management - 
http://lists.puredata.info/listinfo/pd-list


[PD] symbol anxiety

2009-02-22 Thread Phil Stone

Hi everybody,

Ever since I first started programming with Pd, I have had a vague 
anxiety about symbols, or to be more exact, symbol table growth.  Now, 
I've never run into a problem in real life, but the worry is still 
there, nagging at me, ever since I read on a Pd-list thread that each 
symbol takes up permanent, un-reclaimable space in a symbol table.  So, 
I've always been wary about employing many symbols, or having some 
dynamic process that creates many symbols on the fly.


Attached is [maketime], a lovely little timer/stopwatch.  I've long 
since lost track of who made it, so I'm sorry can't give you 
well-deserved credit here.  At any rate, it creates *at least* one 
symbol per second (probably more, I'm not sure if each [makefilename] 
generates a new symbol, but I'm guessing it does).  This makes me 
nervous, as I have no idea what the symbol table capacity is, or how to 
see how full it is.  It seems likely that this abstraction would crash 
eventually.


A) Is it true that [maketime] would continually grow the symbol table?

B) Is it possible to tell how full the symbol table is?  How much memory 
is allocated to it in the first place?


C) Wouldn't it be nice to have some truly transient symbols, that could 
be abstraction-local, or at least, re-usable?



Cheers,

Phil Stone


#N canvas 300 22 311 311 12;
#X obj 36 10 cnv 15 220 40 empty *time-display-cnv-in* 0:00:00 20 18
0 36 -1 -241291 0;
#X msg 35 235 \; *time-display-cnv-in* label \$1;
#X obj 69 155 + 1;
#X obj 35 154 f;
#X obj 35 111 metro 1000;
#X msg 133 111 0;
#X obj 35 83 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X floatatom 35 182 5 0 0 0 - - -;
#X obj 133 85 loadbang;
#N canvas 0 22 450 459 sec-to-time-symbol 0;
#X obj 24 17 inlet;
#X obj 50 337 outlet;
#X msg 84 258 set \$1;
#X obj 50 312 makefilename not-set-yet;
#X floatatom 50 258 0 0 0 0 - - -;
#X msg 171 177 set \$1;
#X obj 84 205 makefilename not-set-yet;
#N canvas 0 22 450 300 format 0;
#X obj 24 20 inlet;
#X obj 24 224 outlet;
#X obj 91 105 + 1;
#X obj 24 47 t f f;
#X obj 24 171 makefilename 0%d;
#X obj 176 171 makefilename %d;
#X obj 91 80 = 10;
#N canvas 0 22 450 300 gate2 0;
#X obj 44 237 spigot;
#X obj 44 262 outlet;
#X obj 123 238 spigot;
#X obj 123 263 outlet;
#X obj 21 30 inlet;
#X obj 288 38 inlet;
#X obj 359 129 loadbang;
#X obj 93 194 unpack 0 0;
#X obj 288 62 route 0 1 2;
#X msg 350 95 0 1;
#X msg 319 127 1 0;
#X msg 288 166 0 0;
#X connect 0 0 1 0;
#X connect 2 0 3 0;
#X connect 4 0 0 0;
#X connect 4 0 2 0;
#X connect 5 0 8 0;
#X connect 6 0 11 0;
#X connect 7 0 0 1;
#X connect 7 1 2 1;
#X connect 8 0 11 0;
#X connect 8 1 10 0;
#X connect 8 2 9 0;
#X connect 9 0 7 0;
#X connect 10 0 7 0;
#X connect 11 0 7 0;
#X restore 24 133 pd gate2;
#X connect 0 0 3 0;
#X connect 2 0 7 1;
#X connect 3 0 7 0;
#X connect 3 1 6 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 2 0;
#X connect 7 0 4 0;
#X connect 7 1 5 0;
#X restore 84 177 pd format;
#X obj 171 84 % 60;
#X obj 85 82 / 60;
#X obj 85 115 int;
#X obj 84 142 % 60;
#X obj 24 115 int;
#X obj 24 82 / 3600;
#X obj 24 44 t f f f;
#X obj 84 234 makefilename %%d:%s;
#X obj 171 153 makefilename %%s:%s;
#N canvas 0 22 450 300 format 0;
#X obj 24 20 inlet;
#X obj 24 224 outlet;
#X obj 91 105 + 1;
#X obj 24 47 t f f;
#X obj 24 171 makefilename 0%d;
#X obj 176 171 makefilename %d;
#X obj 91 80 = 10;
#N canvas 0 22 450 300 gate2 0;
#X obj 44 237 spigot;
#X obj 44 262 outlet;
#X obj 123 238 spigot;
#X obj 123 263 outlet;
#X obj 21 30 inlet;
#X obj 288 38 inlet;
#X obj 359 129 loadbang;
#X obj 93 194 unpack 0 0;
#X obj 288 62 route 0 1 2;
#X msg 350 95 0 1;
#X msg 319 127 1 0;
#X msg 288 166 0 0;
#X connect 0 0 1 0;
#X connect 2 0 3 0;
#X connect 4 0 0 0;
#X connect 4 0 2 0;
#X connect 5 0 8 0;
#X connect 6 0 11 0;
#X connect 7 0 0 1;
#X connect 7 1 2 1;
#X connect 8 0 11 0;
#X connect 8 1 10 0;
#X connect 8 2 9 0;
#X connect 9 0 7 0;
#X connect 10 0 7 0;
#X connect 11 0 7 0;
#X restore 24 133 pd gate2;
#X connect 0 0 3 0;
#X connect 2 0 7 1;
#X connect 3 0 7 0;
#X connect 3 1 6 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 2 0;
#X connect 7 0 4 0;
#X connect 7 1 5 0;
#X restore 171 116 pd format;
#X connect 0 0 14 0;
#X connect 2 0 3 0;
#X connect 3 0 1 0;
#X connect 4 0 3 0;
#X connect 5 0 6 0;
#X connect 6 0 15 0;
#X connect 7 0 6 0;
#X connect 8 0 17 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 11 0 7 0;
#X connect 12 0 4 0;
#X connect 13 0 12 0;
#X connect 14 0 13 0;
#X connect 14 1 9 0;
#X connect 14 2 8 0;
#X connect 15 0 2 0;
#X connect 16 0 5 0;
#X connect 17 0 16 0;
#X restore 35 208 pd sec-to-time-symbol;
#X text 176 111 reset time;
#X text 57 83 start;
#X connect 2 0 3 1;
#X connect 3 0 2 0;
#X connect 3 0 7 0;
#X connect 4 0 3 0;
#X connect 5 0 7 0;
#X connect 5 0 3 1;
#X connect 6 0 4 0;
#X connect 7 0 9 0;
#X connect 8 0 5 0;
#X connect 9 0 1 0;
___
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management

Re: [PD] here I go again..dynamic abstractions

2009-02-10 Thread Phil Stone
Frank Barknecht wrote:
 I see a third option: $0 is not only different from the $-variables in
 message boxes, but it's also different from the $-variables used as
 object arguments.[1] So another way out would be to replace only $0
 with something like #0.

Yes.   This, at least, would end the irrelevant dollar sign variables 
in message boxes are different than abstraction initializers argument 
every time someone asks why $0 can't be used in a message box.  :-)  
Also, it would be much less confusing in general, because $0 never means 
the same thing as $1...$n, inside *or* outside of message boxes.

  Of course beginners then still would like to
 use #0 in a message box.
   

I'm not a beginner (though far from an expert), and I still want to use 
the unique identifier in message boxes.  What, exactly, is wrong with 
that use case?  Frank, I think you make quite a bit of use of $0 in 
messages in [memento], for example.  If it's wrong, why does the idiom;

[f $0]-[message $1(


get suggested as a solution so often?  In my opinion, that's just a 
kludge, avoiding the original problem.


Looking back on the thread, I see this from Iohannes:
 $-args in message-boxes are a way to modify messages.
 since messages don't have a patch-context, neither have (their  
 patchable instances) message-boxes.

But the message-boxes *do* have a patch context; they live in an 
abstraction that has a unique identifier, which is sometimes useful to 
blend into a message.


I'm sorry for being stubborn about this, but I still don't see Georg's 
basic question answered, just a lot of dancing around it.  :-)


Phil


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


Re: [PD] here I go again..dynamic abstractions

2009-02-10 Thread Phil Stone
Frank Barknecht wrote:
 Hallo,
 Mathieu Bouchard hat gesagt: // Mathieu Bouchard wrote:

   
 On Sat, 7 Feb 2009, Frank Barknecht wrote:

 
 Messages don't have anything comparable to the canvas' $0.
   

I missed this the first time it went by, and I think it's central to 
(my) confusion about this...

Messages don't have anything comparable to the canvas' $0, but *message 
boxes do*!  Why, therefore, is $0 not valid in a message box (as a way 
of embedding the canvas-identifier into a message), and further, why are 
people going so far as to suggest new, orthogonal meanings for $0 in a 
message box?  Please, don't do this; it would only make the situation 
much more confusing!

Arrgh!


Phil


 A possible alternative use for $0 in messages would be the selector
 (list, symbol, ...) as that is the thing before $1, but
 implementing that could be even more confusing to beginners.
   
 Why would that be confusing to beginners?
 

 Because it's not the $0 from object boxes.

 Ciao
   


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


Re: [PD] here I go again..dynamic abstractions

2009-02-09 Thread Phil Stone
This has been an interesting discussion about the philosophy behind 
dollar-sign symbols in Pd, but it seems to me like most participants are 
talking around Georg's original point at the head of the thread: it's 
inconvenient to get $0 (the unique-id-for-this-abstraction value) into 
a message, and its exclusion from message boxes seems arbitrary.

Why arbitrary?  It's very clear that dollar symbols mean different 
things in messages than they do in abstractions -- that is not the 
issue.  In fact, $0 is a special case *when used as an abstraction 
parameter* as well -- it does not have anything close to the same 
meaning or function as $1, $2, etc. (i.e., initialization parameters).  
Yet, it is still allowed in abstractions.  Why does the same reasoning 
not hold for message boxes?  It is a perfectly valid use-case to send an 
abstraction-id (from the message's containing abstraction) in a message. 

This whole question might have been avoided if $0 did not start with a 
dollar sign (I think someone mentioned this already).  But just because 
it does, why is it excluded from message boxes?  At least one other 
response in this thread has gone so far as to suggest that since $0 
doesn't have any meaning in a message box, it should be overloaded for 
something else (other than the unique abstraction identifier).   No, 
please!   :-)  Despite all the discussion in this thread, I have yet to 
see a reason for this exclusion that wouldn't apply equally to using $0 
as an abstraction-id.


Phil Stone
pkstonemusic.com


Mike McGonagle wrote:
 On Mon, Feb 9, 2009 at 3:45 PM, Jonathan Wilkes jancs...@yahoo.com wrote:
   
 I think it would make sense (both pedagogically and practically) if $0 in 
 message boxes actually _did_ something.  Incrementing per message box would 
 be one option, but expanding to a user-defined symbol or float could be very 
 useful:
 

 Actually, for me, I always think of the word CONTEXT. An abstraction
 is one context, and the meanings of the $ args means one thing. While
 in a message, a $ arg means something completely different. Once I
 realized that the two are not the same thing, it made sense.

 If the $ args had the same meanings in both an abstraction and a
 message, there would be no way to create a message inside of an
 abstraction that allowed for $ args that were unrelated to the $ args
 in the abstraction.

 In other words, if they were the same thing, there would be no way to
 create a variable message that had more args than there were in the
 abstraction itself.

 Mike


   
 [loadbang]
 |
 [f $0]
 |
 [; set $0(

 That way, message box $0 is set by an incoming message: it then sets all 
 current (and future) message box $0's for the patch/abstraction.  
 Alternatively, you could use it for other stuff, like a substitution for 
 pd-my-complicated-and-tiresome-to-type-subpatch-name.

 abstraction $0: set by pd, unique abs instance identifier, common to all 
 object boxes
 message box $0: set by user through msg box, common to all abstraction 
 instance msg's

 Seems like that would be consistent with the language as far as I understand 
 it.

 -Jonathan

 --- On Mon, 2/9/09, Matt Barber brbrof...@gmail.com wrote:

 
 From: Matt Barber brbrof...@gmail.com
 Subject: Re: [PD] here I go again..dynamic abstractions
 To: PD-List pd-list@iem.at
 Date: Monday, February 9, 2009, 9:01 PM
 [f $0]-[message $1(  is conceptually different from [message
 $0(  for
 the same reason that [f $2]-[message $1(  is conceptually
 different
 from [message $2(  (and would be, even if $0 had any
 meaning in a
 message box).  When I teach I always start with dollar-sign
 expansion
 in message-boxes, since it's simpler and easier to
 comprehend.  Then
 when this issue comes up when they move to dollar-sign
 expansion in
 abstractions (and it always does come up), you can help
 them think it
 through with what they already know about message boxes.

 I only see two options:  one is to use a different
 dereference symbol
 for abstraction arguments in message boxes -- but why worry
 with that
 since it's easy enough to get abstraction arguments
 into messages at
 run-time? -- the other is to make an exception
 and have special
 behavior for $0 in message boxes (that is, make it the same
 as in
 object boxes) -- but then this probably breaks the
 consistency of the
 language.


 Matt


   
 Date: Mon, 09 Feb 2009 13:33:36 +0100
 From: Georg Werner ge...@fricklr.de
 Subject: Re: [PD] here I go again..dynamic
 
 abstractions
   
 To: pd-list@iem.at
 Message-ID: 499022a0.7080...@fricklr.de
 Content-Type: text/plain; charset=ISO-8859-1;
 
 format=flowed
   
 hi,

 Frank Barknecht:
   How about making $0 in messages be a message
 
 counter?
   
 if somebody really needs that - i dont ;)

 ok, i give up. i think we are on a rather
 
 philosophical point now.
   
 but i had a lot of times when students where asking
 
 why they have

Re: [PD] Nice distortion

2008-12-29 Thread Phil Stone
Frank Barknecht wrote:
 Hallo,

 oops, I sent a version with a missing connectin to the rpole~
 coefficient. Please use this one instead.

 Ciao
   
 

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

I've been having a blast with this effect -- really great, Frank!  It 
doesn't seem too CPU-hungry, either, though that's just an impression 
not yet quantified.

One little thing...the meaning of wet/dry seems to be reversed; i.e.  0 
gives full effect, 1 gives no effect.

Thanks for making this available.



Phil Stone

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


[PD] Possible to unselect radio buttons?

2008-12-18 Thread Phil Stone
Is there any way to make there be *no* selection displayed in a radio 
button control?

If not, this would be a very useful feature in that it would allow 
multiple banks of radio buttons to be tied together programatically.  
I.e., imagine a set of four hradio controls, stacked on top of each 
other.  Any selection in any of the four becomes the current selection, 
but also turns off all other banks' selection indicators.

Whereas a single 64-position radio control would be awkward to deal with 
graphically, 8 rows of 8-pos. hradio controls would be nice and compact.


Phil Stone
www.pkstonemusic.com

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


Re: [PD] Possible to unselect radio buttons?

2008-12-18 Thread Phil Stone
That's a pretty brilliant hack, Luke.  Thanks for the idea. 


Phil


Luke Iannini wrote:
 Hi Phil!
 I've hacked this in before by using a bunch of [moses] objects and
 sending [color 1 1 1( etc. messages to the radio objects that are
 supposedly not selected (which makes the radio indicator the same
 color as the background so it looks like there's nothing there).

 I'd be happy to dig up a patch if you want to see a demo
 (but of course some way to do this built in to the IEMgui would be
 much faster : ) )

 Cheers
 Luke

 On Thu, Dec 18, 2008 at 1:06 PM, Phil Stone pkst...@ucdavis.edu wrote:
   
 Is there any way to make there be *no* selection displayed in a radio
 button control?

 If not, this would be a very useful feature in that it would allow
 multiple banks of radio buttons to be tied together programatically.
 I.e., imagine a set of four hradio controls, stacked on top of each
 other.  Any selection in any of the four becomes the current selection,
 but also turns off all other banks' selection indicators.

 Whereas a single 64-position radio control would be awkward to deal with
 graphically, 8 rows of 8-pos. hradio controls would be nice and compact.


 Phil Stone
 www.pkstonemusic.com

 ___
 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] Possible to unselect radio buttons?

2008-12-18 Thread Phil Stone
Steffen,

Auto-generated matrix and everything!  By the way, [fire64] wouldn't 
instantiate, but it apparently had done its work before you saved the 
abstraction, so the matrix worked fine.

Very, very cool.


Phil

Steffen Leve Poulsen wrote:
 Hi Phil

 here's one attached bang-matrix.pd

 mvh/steffen leve poulsen

 Phil Stone skrev:
 That's a pretty brilliant hack, Luke.  Thanks for the idea.

 Phil


 Luke Iannini wrote:
 Hi Phil!
 I've hacked this in before by using a bunch of [moses] objects and
 sending [color 1 1 1( etc. messages to the radio objects that are
 supposedly not selected (which makes the radio indicator the same
 color as the background so it looks like there's nothing there).

 I'd be happy to dig up a patch if you want to see a demo
 (but of course some way to do this built in to the IEMgui would be
 much faster : ) )

 Cheers
 Luke

 On Thu, Dec 18, 2008 at 1:06 PM, Phil Stone pkst...@ucdavis.edu 
 wrote:
  
 Is there any way to make there be *no* selection displayed in a radio
 button control?

 If not, this would be a very useful feature in that it would allow
 multiple banks of radio buttons to be tied together programatically.
 I.e., imagine a set of four hradio controls, stacked on top of each
 other.  Any selection in any of the four becomes the current 
 selection,
 but also turns off all other banks' selection indicators.

 Whereas a single 64-position radio control would be awkward to deal 
 with
 graphically, 8 rows of 8-pos. hradio controls would be nice and 
 compact.


 Phil Stone
 www.pkstonemusic.com




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


[PD] puredata.info down?

2008-12-14 Thread Phil Stone
puredata.info times out -- anybody know if it's up?


Phil Stone

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


Re: [PD] [polywavesynth] and [polygrainsynth] bug fix

2008-11-29 Thread Phil Stone
hard off wrote:
 hi againsome more comments

 1) at first i also tried changing the ADSR sliders to a log setting, 
 and totally understand what you mean about the low values and 
 clicking.  my workaround was just to change the range from 1-5000 to 
 5-5000.  however, i think an even better solution is not the log 
 function, but an exponential one.

 if you change the sliders to 0-1 range and then do:

 [r slider-value]
 |
 [pow 2]   (or 3)
 |
 [* 5000]
 |
 [+ 1]

 then that gives the most user-friendly sliders in my opinion. 

Be aware that that breaks the way state is currently saved for the ADSR; 
ADR values are stored as milliseconds, not as 0-1.  That could be 
changed, but it would break all existing patches (I'm probably the only 
one for whom that causes problems -- still I try not to do it too 
often).  The log setting is a pretty good compromise; thanks again for 
the idea.

 2) i understand that you can change the pan position and speed, but 
 unless i'm mistaken, there is no way just to keep everything centre 
 panned. 

Just change the radio button from rnd (for random panning) to fix 
(for fixed position).  Then, move the position slider to the center 
(or move it live for manual panning).  Sorry that the controls are 
labeled so cryptically, but real estate is at a  premium, and the web 
page documentation spells out the details.

 i think a pan width slider would be helpful.  however, maybe that's 
 just something i want and wouldn't be that important for anyone else, 
 so i might just put that on my own modified version.

Yeah, I thought of some other panning algorithms and enhancements 
besides random panning, too, but have punted this off to OSC control.  
You can do just about anything you can conceive of through the OSC 
input, as you are completely in control of what numbers you pass in.  
Most of my latest work with these two synths involves hooking up LFOs 
and other data generators to various controls through the OSC input.

That said, I *do* plan to balance the panning a little better at some 
point.  It's a simple-minded pan right now, not a balanced-power ratio, 
so there's a center hole effect.

 3) not sure what was happening with the gain problem.  perhaps svf~ 
 puts out some gnarly peaks that are well above the -1 1 threshold, and 
 that was making things sound weird when i changed volume.  the problem 
 seems fine now, because i deleted the gain section from the 
 polywavevoice~ abtraction and put the gain directly onto the ouptut of 
 polywavesynth~.  

Well, I'm glad you're not shy about customizing, but that change wipes 
out the possibility of phased-in preset changes (as when the global 
toggle is off).  I've gone back and forth on this during the evolution 
of the instrument, and am really liking the current set up which allows 
local-per-voice gain changes, over-rideable with the global control, 
which causes all voices to be controlled instantly by the GUI and OSC.

 the gain slider also had a really unusable range, so i also adjusted 
 that into a more manageable range.

It is greater than unity gain above about 70% or so.  This was done to 
match up with [polygrainsynth], which sometimes needs the extra gain.  
When you have a rack of these, with the two types mixed together, it's 
good to have the gain slider-range match, but otherwise, you're right 
that the gain slider could be better optimized for [polywavesynth]'s 
purposes.

 i will definitely use this synth a lot from now on.  today i was 
 running it with an SH101 emulator i am making, and a modified 
 sequenced version of frank's vosim~ abstraction, and some drum synths, 
 and it was all sounding pretty sweet.  really cool to be able to get 
 some polyphony happening and do chords and stuff! 

That's really great to hear, and I look forward to hearing some music 
made with it.  Check out [polygrainsynth] if you get a chance.

Thanks a million for the detailed feedback,

Phil
http://www.pkstonemusic.com

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


Re: [PD] [polywavesynth] and [polygrainsynth] bug fix

2008-11-29 Thread Phil Stone
Sorry for the self-reply, hard off pointed out a hole in the 
documentation to [polywavesynth] and [polygrainsynth]:

Phil Stone wrote:
 hard off wrote:
   
 2) i understand that you can change the pan position and speed, but 
 unless i'm mistaken, there is no way just to keep everything centre 
 panned. 
 

 Just change the radio button from rnd (for random panning) to fix 
 (for fixed position).  Then, move the position slider to the center 
 (or move it live for manual panning).  Sorry that the controls are 
 labeled so cryptically, but real estate is at a  premium, and the web 
 page documentation spells out the details.
   

I double-checked, and it looks like I left out any explanation of how 
panning works from the web page docs.  Oops.  I'll remedy that very soon.


Phil

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


Re: [PD] [polywavesynth] and [polygrainsynth] bug fix

2008-11-28 Thread Phil Stone
Thanks for the feedback, Mr. Off. :-)  Seriously, I really appreciate 
it.  (responses interleaved below).


hard off wrote:
 yeah getting some quite lush sounds out of this polywavesynth now.  
 says its only using 4% of my cpu as well, which is a bonus.  haven't 
 tried the grain one yet.

Fast machine!   This means you can use big voice numbers, like 64 (if 
you can find a use for that kind of polyphony).  Alternatively, you can 
throw up multiple [polywavesynth]s and/or [polygrainsynth]s, for 
polytimbral polyphony, or fattened unison voices.

 a couple of things:

 1) the message box going into the sssadpanel currently contains 
 [example_presets/example1(
 but the folder is actually [Example_Presets], my system doesn't work 
 with the change in capitalization.

This is in [polywavesynth_example] -- good catch; I'll fix it on the 
next release.

 2) it's hard to adjust the ADSR sliders at low values.  particularly 
 for attack, it is important to be able to choose values around 20ms or 
 50ms.  so i think a log, or exponential scaling would be better for 
 the ADSR sliders.

This is such an excellent idea, I implemented it immediately (changed 
the sliders to log).  Not nearly so much shift-dragging is necessary 
now.  You have to watch out for attack/decay/release values of less than 
11 msecs. or so, though.  They can sound very clicky (although this may 
actually be desired in certain circumstances).  Again, this will be 
available on the next release; it's easy to change on your own, though, 
and it has no ill effects.

 3) i had a look, and i can't figure out why, but it seems that the 
 global gain is still somehow affecting the sound further up the 
 chain.  ie..when i adjust the global gain, the attack of the sound is 
 also changing.  still not sure where this is coming from, but maybe 
 something connected to the adsr?

I don't understand what you mean here...the gain slider on the 
[polywavesynth] UI is interacting with the attack?  Are you sure it's 
not clipping - it's easy to clip with higher gain settings.  The more 
notes you hold down, the higher the output, so for big polyphony, you 
have to bring the slider down a bit.  If I'm totally misreading what 
you're saying here, let me know.

 4) would be nice to have more control over the amount of panning.

Like all the controls, it's available via OSC:

[an lfo, or anything else you like]
 |
[/example/pan/position $1 
 |
(connect to the rightmost inlet of [polywavesynth])

Similarly, you can change the pan lagtime with a message like 
/example/pan/speed 0.8. The OSC implementation of [polywavesynth] 
(polygrainsynth works the same way) is here:  
http://www.pkstonemusic.com/polyWaveSynth.html#osc

 but yeah, there are lots of really good sounds possible with this, 
 great synth!!!

Thanks again for the excellent critique.


Phil
http://www.pkstonemusic.com

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


[PD] [PD-announce] [polygrainsynth] fixed

2008-11-24 Thread Phil Stone
Hi again,

I've just uploaded a fix for the grain pointer bug in [polygrainsynth] 
that showed up in the recent major release.  Please grab v1.1 at:

http://www.pkstonemusic.com/code/polygrainsynth.tgz


Thanks for your patience, and enjoy.


Phil Stone
www.pkstonemusic.com

___
Pd-announce mailing list
[EMAIL PROTECTED]
http://lists.puredata.info/listinfo/pd-announce

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


[PD] [PD-announce] [polygrainsynth] bug

2008-11-23 Thread Phil Stone
Murphy's Law is upheld once more...I tested both synthesizers fairly 
carefully for almost a week before releasing them, but within hours of 
releasing, I've found a fairly major bug in [polygrainsynth].

This bug isn't fatal; you can make sound with the current 
[polygrainsynth].  The problem: pointer hop control doesn't work 
properly until after 'n' notes are played, where n equals your number of 
allocated voices.  I know where the problem is, but don't have it fixed 
and tested yet.

Expect an update soon.

[polywavesynth] is fine, I think (knock on wood!).


Phil Stone

___
Pd-announce mailing list
[EMAIL PROTECTED]
http://lists.puredata.info/listinfo/pd-announce

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


[PD] [PD-announce] Major updates to [polygrainsynth] and [polywavesynth]

2008-11-22 Thread Phil Stone
Significant fixes and enhancements have been made to both 
[polygrainsynth] and [polywavesynth] (free polyphonic synthesizers for 
Pd).   Please try these much-improved new versions.


webpage: http://www.pkstonemusic.com/pd_code.html

some improvisations made with these instruments:  
http://www.pkstonemusic.com/pubmusic.htm


[polygrainsynth]:


2008-11-22 - v 1.0

* Added global toggle, which enables live output of global-capable 
parameters to all voices.
* Added OSC-UI toggle, which enables the UI to follow OSC input.
* Fixed many small bugs in indeterminacy (rand and drunken walk).
* Fixed bug in pointer wrap function for negative pointer hops.
* Eliminated pointer set slider and variable for anchoring. 
Anchored notes now start at the subsection beginning (for pointer hops 
greater than or equal to 0) or the subsection end (for pointer hops less 
than 0).
* Eliminated rand/drunk switch to make rand and drunk controls 
less cumbersome. Now, a zero value in these parameters is used to switch 
them off. This has the added benefit of allowing complete independence 
between hop_size and grain_dur indeterminacy controls.
* OSC nodes are all-lowercase now (e.g. /allNotesOff is now 
/allnotesoff).


[polywavesynth]:m


2008-11-22 - v 4.0

* Added global toggle, which enables live output of global-capable 
parameters to all voices.
* Added OSC-UI toggle, which enables the UI to follow OSC input.
* Made 10 of the control parameters live i.e., global.
* Fixed bug in noise wave table (only an eighth of it was 
initialized before!)
* OSC nodes are all-lowercase now (e.g. /allNotesOff is now 
/allnotesoff).



Phil Stone
http://www.pkstonemusic.com





___
Pd-announce mailing list
[EMAIL PROTECTED]
http://lists.puredata.info/listinfo/pd-announce

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


Re: [PD] nqpoly5, now with full loadbang support!

2008-11-05 Thread Phil Stone
Ah, a preemptive enhancement, as it were.  I vaguely wondered why I 
never had any trouble with [loadbang] and [polypoly].

Thanks, Frank.


Phil



Frank Barknecht wrote:
 Hallo,
 Phil Stone hat gesagt: // Phil Stone wrote:

   
 Can this fix be applied to [polypoly] as well?
 

 No.

 Because it already is. ;)

 Ciao
   


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


Re: [PD] nqpoly5, now with full loadbang support!

2008-11-04 Thread Phil Stone
Hi Frank,

Can this fix be applied to [polypoly] as well?


Phil


Frank Barknecht wrote:
 Hallo,
 Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:

   
 I just did a quick hack job on Frank's improved nqpoly4 to make  
 nqpoly5.  It is very similar to the nqpoly4 but loadbangs work  
 properly, thanks to the use of IOhannes' very useful [initbang].
 

 Thanks for bringing this up again, but there is an easier and pure-Pd
 way to add the missing loadbang. I now checked in the fix to nqpoly4.pd
 which adds loadbang support by sending a final message loadbang to the
 poly-subpatch.

 I kept the inlets for compatibilitly.

 Ciao
   


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


[PD] [polywavesynth] and [polygrainsynth] bug fix

2008-10-01 Thread Phil Stone
Hi again,

If you use either of these synthesizers, please grab the latest.  The 
previous versions moved gain to a global parameter.  I should have 
known better; this causes glitches in already-sounding notes when 
presets change.  I had a similar problem last year with [polywavesynth], 
but forgot about it.

This is the tradeoff to using [poly] to manage voices; if you want the 
ability to change presets cleanly, most parameters (i.e., those stored 
to make up the preset) can only be changed on new attacks.  I haven't 
thought of a way around this conundrum yet.

At any rate, the latest versions fix this issue.  Sorry for any 
inconvenience.

This leads to the web pages and download links for both synthesizers: 
http://www.pkstonemusic.com/pd_code.html


Phil Stone
http://www.pkstonemusic.com



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


[PD] [polygrainsynth] minor update

2008-09-23 Thread Phil Stone
This is a minor update; if you're using OSC with [polygrainsynth] (or 
ever plan to), you should pick it up.  Some parts of the OSC tree were 
incomplete in the initial release of [polygrainsynth].  This has been 
rectified in version 0.2.


webpage: http://www.pkstonemusic.com/polygrainsynth.html

archive: http://www.pkstonemusic.com/code/polygrainsynth.tgz


Phil Stone
www.pkstonemusic.com



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


Re: [PD] [PD-announce] new polyphonic granular synthesizer for Pd

2008-09-18 Thread Phil Stone
Frank Barknecht wrote:
 Hallo,
 Phil Stone hat gesagt: // Phil Stone wrote:

   
 I'm pleased to announce the availability of [polygrainsynth], a
 polyphonic granular synthesizer built on the [a_grain] abstraction
 written by Jamie Bullock.  Much like its older sibling [polywavesynth],
 [polygrainsynth] does automatic allocation and management of n voices,
 where n is limited only by your available processing power.
 

 That's very nice, and has exemplary documentation!
   

Thank you, Frank.  The object wouldn't have been possible without 
[polypoly] and several other of your excellent contributions.

 I didn't look at the internals yet, but it occured to me, that the
 dependency on OSC probably could be factored out (if you'd want to) by
 using Pd's standard [route]. The control messages would look like: 
 (name) grain env atk 12 then and would include a tree of [route]s.
 To make that OSC-targetable one could use a separate abstraction. The
 disadvantage would be that one looses pattern matching.
   

That's an intriguing idea.  I *do* like the pattern matching, but it's 
not necessary at the interior level of the synthesizers.  I wonder what 
the performance differences are, if any, between [routeOSC] and [route]?

It's tempting, because with your recent work towards a vanilla-ready 
filter, it's getting more likely that [svf~] could be replaced with 
something non-external, and then my synthesizers could be completely 
external-free.


Phil
www.pkstonemusic.com

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


[PD] [import] verbosity

2008-09-15 Thread Phil Stone
I'm using [import] on an abstraction (as discussed earlier); this 
abstraction does some automatic object instantiation (via [polypoly]) 
and each of the generated objects has an [import ...] in it.  This leads 
to a barrage of console output, like:

[import] loaded library: 'cyclone'
libdir_loader: added 'cyclone' to the canvas-local objectclass path
libdir_loader: added 'cyclone' to the canvas-local objectclass path
[import] loaded library: 'cyclone'
libdir_loader: added 'cyclone' to the canvas-local objectclass path
libdir_loader: added 'cyclone' to the canvas-local objectclass path
.
.
.
(repeat for number of voices created by [polypoly].

A great enhancement for [import] would be a verbosity control! :-)


Phil Stone

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


  1   2   3   >