Re: [PD] [declare]: -path seems not to be added to the searchpathes
Frank Barknecht wrote: Hallo, - [declare -lib somelib] makes the objects of the external 'somelib' availabe to ALL patches, not only to the [declare]'s parent patch. Currently it's impossible to unload a binary object (builtin or external) from Pd once it is loaded. Loading the wrong [counter] binary will make all your [counter] objects behave like the one loaded first. That's also why you cannot overwrite binary objects with abstractions. Just try it. in fact it IS possible, as krzysztof has shown in cyclone. (ok, it is not real unloading (as in: freeing memory) but you can manipulate pd's object-table, once you have manged to run a certain function in your library. but imo its dirty fg.sER IOhannes ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] proposals for src/notes.txt
Roman Haefeli wrote: Ciao hm, it's not that i wanted to use [declare]'s inside abstractions and it turned out, that it is not necessary at all (at least for what i want). but every patch needs a [declare -path], whereas only one (the first loaded) patch needs a [declare -lib]. i find that inconsistent. apart from the fact, that it IS inconsistant, i cannot follow your arguing. you are correct that only the first loaded patch MUST contain the [declare -lib]. but since you do not know which patch is loaded first (at least you should not assume that you do know), i would suggest that all patches depending on a library SHOULD contain the [declare -lib]. and hopefully(?) in the future there will be some more locality... mfg.sdft IOhannes ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [declare]: -path seems not to be added to the searchpathes
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote: Yeah, they are essentially the same thing. The advantages of using [declare] would be that the names are shorter and perhaps more readable in the context of that patch. Plus the help files would work :-/. IIRC, cliking Help on [myfolder/myabs] won't find the help file. If the help file was next to myabs in in myfolder/myabs-help.pd it would be found as usual for both cases. Ciao -- Frank Barknecht _ __footils.org_ __goto10.org__ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] puredata evolution
Chris McCormick wrote: Yeah, I agree completely on all counts. Sometimes really great software comes out of forks. DesireData looks really interesting, and I know that nova isn't a fork, but it looks interesting too. Can't wait until some of these cool bits of software reach maturity (same goes for Pd)! i've never been able to get DesireData to work... -- damian stewart | +44 7854 493 796 | [EMAIL PROTECTED] frey | live art with machines | http://www.frey.co.nz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] wiiremote for Mac OS X
i got the same now with the version 1.0B6 from april. the version i got build but not work was 1.04B from december. mn Am 23.05.2007 um 04:54 schrieb Hans-Christoph Steiner: My guess is that I missed something in the port. There are a ton of warnings, maybe one of them holds the key to the problem. Here's what I get when compiling: cc -DPD -O2 -I /Users/pd/auto-build/pd-extended/pd/src -Wall -W - ggdb -I/sw/include -DMACOSX -DUNIX -Dunix -o aka.wiiremote.o -c aka.wiiremote.c aka.wiiremote.c:43: warning: no semicolon at end of struct or union aka.wiiremote.c: In function 'akawiiremote_foundFunc': aka.wiiremote.c:275: warning: unused parameter 'x' aka.wiiremote.c: In function 'akawiiremote_motionsensor': aka.wiiremote.c:299: warning: unused variable 'status' aka.wiiremote.c: In function 'akawiiremote_irsensor': aka.wiiremote.c:309: warning: unused variable 'status' aka.wiiremote.c: In function 'akawiiremote_expansion': aka.wiiremote.c:319: warning: unused variable 'status' aka.wiiremote.c: In function 'akawiiremote_vibration': aka.wiiremote.c:329: warning: unused variable 'status' aka.wiiremote.c: In function 'akawiiremote_led': aka.wiiremote.c:339: warning: unused variable 'status' aka.wiiremote.c: In function 'akawiiremote_assist': aka.wiiremote.c:490: warning: unused parameter 'x' aka.wiiremote.c:490: warning: unused parameter 'b' aka.wiiremote.c:490: warning: unused parameter 'm' aka.wiiremote.c: In function 'akawiiremote_new': aka.wiiremote.c:510: warning: unused parameter 's' cc -DPD -O2 -I/Users/pd/auto-build/pd-extended/pd/src -Wall -W - ggdb -I/sw/include -DMACOSX -DUNIX -Dunix -o wiiremote.o -c wiiremote.c wiiremote.c: In function 'myFoundFunc': wiiremote.c:234: warning: unused parameter 'inquiry' wiiremote.c: In function 'myUpdatedFunc': wiiremote.c:239: warning: unused parameter 'inquiry' wiiremote.c:239: warning: unused parameter 'devicesRemaining' wiiremote.c: In function 'myCompleteFunc': wiiremote.c:246: warning: unused variable 'ret' wiiremote.c:244: warning: unused parameter 'inquiry' wiiremote.c: In function 'wiiremote_search': wiiremote.c:282: warning: 'IOBluetoothDeviceInquiryCreateWithCallbackRefCon' is deprecated (declared at /System/Library/Frameworks/IOBluetooth.framework/ Headers/IOBluetoothUserLib.h:2843) wiiremote.c:282: warning: 'IOBluetoothDeviceInquiryCreateWithCallbackRefCon' is unavailable (declared at /System/Library/Frameworks/IOBluetooth.framework/ Headers/IOBluetoothUserLib.h:2843) wiiremote.c:283: warning: 'IOBluetoothDeviceInquirySetDeviceFoundCallback' is deprecated (declared at /System/Library/Frameworks/IOBluetooth.framework/ Headers/IOBluetoothUserLib.h:2894) wiiremote.c:283: warning: 'IOBluetoothDeviceInquirySetDeviceFoundCallback' is unavailable (declared at /System/Library/Frameworks/IOBluetooth.framework/ Headers/IOBluetoothUserLib.h:2894) wiiremote.c:284: warning: 'IOBluetoothDeviceInquirySetDeviceNameUpdatedCallback' is deprecated (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2914) wiiremote.c:284: warning: 'IOBluetoothDeviceInquirySetDeviceNameUpdatedCallback' is unavailable (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2914) wiiremote.c:285: warning: 'IOBluetoothDeviceInquirySetCompleteCallback' is deprecated (declared at /System/Library/Frameworks/IOBluetooth.framework/ Headers/IOBluetoothUserLib.h:2924) wiiremote.c:285: warning: 'IOBluetoothDeviceInquirySetCompleteCallback' is unavailable (declared at /System/Library/Frameworks/IOBluetooth.framework/ Headers/IOBluetoothUserLib.h:2924) wiiremote.c:291: warning: 'IOBluetoothDeviceInquiryStart' is deprecated (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2864) wiiremote.c:291: warning: 'IOBluetoothDeviceInquiryStart' is unavailable (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2864) wiiremote.c:294: warning: 'IOBluetoothDeviceInquiryDelete' is deprecated (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2854) wiiremote.c:294: warning: 'IOBluetoothDeviceInquiryDelete' is unavailable (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2854) wiiremote.c: In function 'wiiremote_stopsearch': wiiremote.c:310: warning: 'IOBluetoothDeviceInquiryStop' is deprecated (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2874) wiiremote.c:310: warning: 'IOBluetoothDeviceInquiryStop' is unavailable (declared at /System/Library/Frameworks/ IOBluetooth.framework/Headers/IOBluetoothUserLib.h:2874) wiiremote.c:317: warning: 'IOBluetoothDeviceInquiryDelete' is deprecated (declared at /System/Library/Frameworks/
Re: [PD] gui development (was puredata evolution)
Kevin McCoy wrote: The gui needs work - do you mean we need more/better looking gui objects? When I was working on OS X, I couldn't really use very many gui objects at once because of Apple's crappy closed implementation of tcl/tk; the lag was terrible. Pd devs can't really do anything about that (though it is a huge problem). A significant portion of pd users are on OS X. I have used pd on Windows, OSX, and Linux, and in all cases the tcl/tk performance was about equivalent: good enough (I certainly don't notice any lag issues with OSX), but it started to break down once there were too many objects on screen. I understand this is a problem with tcl/tk. As I understand it, tcl/tk is basically a semi-scripted programming language in itself, with a gazillion features that pd neither uses nor needs to use. It would be dead-easy to re-implement the current GUI in C or C++ using a cross-platform low-level graphics library, which would not only give us enormous visualisation capability, but I think is necessary to support any more advanced GUI development, since tcl/tk already slows down too much if there are a lot of lines or objects on-screen. This would also give us real-time data-structure visualisation as well, which would be *great*. Indeed this is a project I'd like to take on, but I can't penetrate the GUI code, can't figure out where anything hooks in to anything. Anyone care to give me some pointers? Pd's gui definitely does need work, but without a clear roadmap it will be hard to say what priority that is, right? Watching that google talk has me thinking about all kinds of things. The GUI doesn't need to have a particular priority relative to any other parts, surely; GUI development and core development can occur in parallel; this would also have the nice side-effect of enforcing looser coupling between the GUI and the engine. -- damian stewart | +44 7854 493 796 | [EMAIL PROTECTED] frey | live art with machines | http://www.frey.co.nz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] PD i education
Can anybody help me point out who uses PD to teach electronic music? .. (Algoritmic) Composistion Synthesis DSP-theory real-time performance What are the pros and cons for using it to teach DSP-theory? Best, Eirik Blekesaune ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD i education
I guess you mean in the academic world? As was recently mentioned in another thread, Tom Erbe (SoundHack author) uses PD to teach synthesis at CalArts, I think that's a pretty good endorsement! d. Eirik Arthur Blekesaune wrote: Can anybody help me point out who uses PD to teach electronic music? .. (Algoritmic) Composistion Synthesis DSP-theory real-time performance -- derek holzer ::: http://www.umatic.nl ::: http://blog.myspace.com/macumbista ---Oblique Strategy # 162: Try faking it ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] sample playing
Hallo, Zeitler Andreas hat gesagt: // Zeitler Andreas wrote: But it takes 1 time until the playhead reaches again the in point until the sample really starts looping. Maybe i should start building from scratch. Indeed I would recommend to try building a sampler from scratch at least as a learning exercise. Playing tables is an important thing to understand deeply, as are [f ]x[ 1] and [t b a]. ;) Ciao -- Frank Barknecht _ __footils.org_ __goto10.org__ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD i education
Hallo, Eirik Arthur Blekesaune hat gesagt: // Eirik Arthur Blekesaune wrote: Can anybody help me point out who uses PD to teach electronic music? .. (Algoritmic) Composistion Synthesis DSP-theory real-time performance What are the pros and cons for using it to teach DSP-theory? I currently teach a bit of that at www.khm.de and obviously Miller uses it, the IEM does and probably many others. Generally lets put it that way: Max/MSP is a standard tool to teach what you mentioned above. Without starting a war if Pd or Max/MSP are the better tools, I do believe that Pd can be used as a drop-in replacement in most university courses of that kind. The advantage of Pd here is, that it is much cheaper for the students, that you can look at the source, if you're so inclined, and that it runs on Linux. The major disadvantage of Pd is a less organized documentation, but if you teach Pd in a school, that is not a big issue IMO, as you generally make up your own teaching material anyways. At least I do. Ciao -- Frank Barknecht _ __footils.org_ __goto10.org__ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD i education
I use PD with our MA/MSc students in Interactive Media and (some) in Music Technology here at the University of Limerick. http://www.csis.ul.ie/imedia/ http://www.ccmcm.ie/ http://www.idc.ul.ie/ - Mikael Fernström On 29 May 2007, at 09:39, Eirik Arthur Blekesaune wrote: Can anybody help me point out who uses PD to teach electronic music? .. (Algoritmic) Composistion Synthesis DSP-theory real-time performance What are the pros and cons for using it to teach DSP-theory? Best, Eirik Blekesaune ___ 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] Behavoir of [keyup] in Linux
# Adding a delay worked well. But something is surprising. The [delay] have to be longer than 0.1 to block this oscillating behavior. I'm attaching a patch (delaykey.pd) which shows the implementation. I think X11 gives the key pressed message in every 40 msec's or something. So 0.1 delay is not enough to block these messages. # and I'm attaching the abstracion I was using in Windows too. (keybin.pd, keybin-help.pd) -ugur- On 5/29/07, Claude Heiland-Allen [EMAIL PROTECTED] wrote: ugur guney wrote: # When I press and hold a key, after a short time [keyup] starts to output the number of that key repeatedly (before releasing it). In Windows it only outputs the key no when a key is released. It's just the way X11 works, as far as I understand it. I did a test with GridFlow, and the same thing happens (console log from attached patch): Here the first number is the elapsed time since the previous event (measured in Pd logical time). It would be possible to patch up something that would discard any keyrelease immediately-followed-by keypress for the same key pairs that occur with an elapsed time of 0 (hint: it would use [delay 0.1] or so, maybe even [delay 0] would work). The last keyrelease would be delayed a little, but it would either be unnoticeable with [delay 0.1] or at exactly the same logical time with [delay 0] delaykey.pd Description: Binary data keybin.pd Description: Binary data keybin-help.pd Description: Binary data ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Behavoir of [keyup] in Linux
If it's coming from the X, can't you switch off autorepeat in the X ? Granted, I cannot find the correct documentaiton as to how to do it at the shell level, but the XkeyboardControl structure contains a flag to set it off or on... So there must be a way... Like xset -r ? ... int auto_repeat_mode;/* AutoRepeatModeOff, AutoRepeatModeOn, AutoRepeatModeDefault */ } XKeyboardControl; Just a thought... It does not work on the computer where I am sitting but that may be because I am logged in over the network using SSH on a PuTTy terminal from a Windows machien, so nobody can figure out who's responsible for the key repeats. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of ugur guney Sent: 29 May 2007 12:28 To: Claude Heiland-Allen Cc: pd-list Subject: Re: [PD] Behavoir of [keyup] in Linux # Adding a delay worked well. But something is surprising. The [delay] have to be longer than 0.1 to block this oscillating behavior. I'm attaching a patch (delaykey.pd) which shows the implementation. I think X11 gives the key pressed message in every 40 msec's or something. So 0.1 delay is not enough to block these messages. # and I'm attaching the abstracion I was using in Windows too. (keybin.pd, keybin-help.pd) -ugur- On 5/29/07, Claude Heiland-Allen [EMAIL PROTECTED] wrote: ugur guney wrote: # When I press and hold a key, after a short time [keyup] starts to output the number of that key repeatedly (before releasing it). In Windows it only outputs the key no when a key is released. It's just the way X11 works, as far as I understand it. I did a test with GridFlow, and the same thing happens (console log from attached patch): Here the first number is the elapsed time since the previous event (measured in Pd logical time). It would be possible to patch up something that would discard any keyrelease immediately-followed-by keypress for the same key pairs that occur with an elapsed time of 0 (hint: it would use [delay 0.1] or so, maybe even [delay 0] would work). The last keyrelease would be delayed a little, but it would either be unnoticeable with [delay 0.1] or at exactly the same logical time with [delay 0] ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Actually it does work ( xset -r ) RE: Behavoir of [keyup] in Linux
I said: It does not work on the computer where I am sitting .. But actually it does work, i.e. X clients on that display no longer receive key repeats after an xset -r is issued on any session whose DISPLAY is the X server that I am looking at here. The PuTTy terminal window is not a X client so it's keyboard events are coming from somewhere else. It seems to work for PD runnign on the Linux machine while I am logged in, in this way (looking at the behaviour of the right-click 'help' from the 'key' object found in lib/pd/doc/5.reference) and also 'keybin-help.pd' posted to the list. It's a property of the 'display', not the machine or the shell session, however. I think you could not easily have another program running in which key repeates ARE active; unless it's on another display; also if the program bypasses the X and gets its keystrokes from the kernel directly, probably it would not work as expected. ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Pd and Edirol UA-25
After reading on the list about Edirol UA-25 I went out and got one on run on Debian. I can get sound when running in standard mode or midi in advanced but can't get both. I read on the list that some- one is running both midi and sound. Problem is the UA-25 seems to force 24bit in advanced mode which Pd won't run at or is there a way to get around this. Debian Etch Power Book 1.5 Edirol UA-25? ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
Thanks for helping. Well I basically have a rough sketch of all the objects but I am having a tough time with the outlet system. In a nutshell opencv uses an image structure called typedef struct _IplImage. Acording to them The structure IplImage came from Intel Image Processing Library where the format is native. I can give you more information about it if you need it. My problem is sending the result from IplImage to an outlet and being able to receive it from an inlet. So far that is my bigest hurdle. I have this code: IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, frame); Obviously with more stuff in the middle but I keep getting this error from the compiler: error: cannot convert IplImage* to t_symbol for argument 2 to void outlet_anything(_outlet*, t_symbol*, int, t_atom*) I still havent figured a way around this. I am sure its easy but... Anyway Im trying to figure out the outlet first before I tackle the inlet. Any advise? Alain From: Tim Boykett [EMAIL PROTECTED] Date: 2007/05/29 Tue AM 05:18:54 EDT To: [EMAIL PROTECTED] [EMAIL PROTECTED] Subject: Re: opencv motion tracker external HELP! Hi Alain, how is this coming along? I gather that you got the tracker working as a standalone, but no luck with the external yet. Is that right? I would be interested in perhaps helping, but I thought I would check to see what was already working. cheers, tim On 27/05/2007, at 10:35 PM, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: For the last 2 weeks I have been trying to write a motion tracking external using the blob motion tracker in opencv. I had success with writing a program that recieves a path to an avi and motion tracks the blobs and prints their position. Now I am writing the set of Pd externals using the same code with very little success. I need someone that knows what they are doing to look at my Pd code and show me what I am doing wrong. I have read and followed IOhannes guide on external writing. Also, I have looked at the zexy and pdp sorce code in order to learn but still I am not getting it to work. The externals are based on the already working code I was able to frankenstein together. I am calling it FTIR_Tools. It consist of the following (if I ever get them to work!): 1. FTIR_Cam: detects webcam and sends out frames to outlet. 2. FTIR_VPlayer: reads quicktimes from path and sends out frames to outlet. 3. FTIR_Tracker: tracks blobs, sends out matrix blob# position to outlet2 and frames to outlet 1. you can also turn on and off visuals for center point and bounding box. 4. FTIR_Window: displays frames in an X11 window. Please look at my code and show me how to fix it. I am getting nowhere. In the cvBloblib.zip is the program I put together called Tracker and the code called Tracker.cpp. If you want to see how it works drag it to terminal and follow it with a path to an .avi. You must have opencv and fink installed. If you have ploblems installing opencv post and I will be glad to help. Thanks, Alain FTIR_Tools(src).zip cvBloblib.zip ___ 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] proposals for src/notes.txt
On Tue, 2007-05-29 at 09:54 +0200, IOhannes m zmoelnig wrote: you are correct that only the first loaded patch MUST contain the [declare -lib]. but since you do not know which patch is loaded first (at least you should not assume that you do know), i would suggest that all patches depending on a library SHOULD contain the [declare -lib]. and hopefully(?) in the future there will be some more locality... i was thinking about projects, that have kind of a main patch. from that 'main' patch all other patches are opened dynamically (there are such projects besides netpd, afaik). with such a structure, you reliably know, which patch was opened first (maybe it just doesn't make sense to open another patch first, because all patches are dependent on the 'main' patch). anyway, this might be already a too 'specialized' (read: too less general) application. roman ___ Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
[EMAIL PROTECTED] wrote: Thanks for helping. Well I basically have a rough sketch of all the objects but I am having a tough time with the outlet system. In a nutshell opencv uses an image structure called typedef struct _IplImage. Acording to them The structure IplImage came from Intel Image Processing Library where the format is native. I can give you more information about it if you need it. My problem is sending the result from IplImage to an outlet and being able to receive it from an inlet. So far that is my bigest hurdle. I have this code: IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, frame); Obviously with more stuff in the middle but I keep getting this error from the compiler: whoa don't do that. if you are sure that you have to send pointers around, then you should a) have a look at Gem (where this is done) or GridFlow and b) don't do it (Gem is using this for legacy reasons); really. even though pd has pointers, they are not meant for passing arbitrary data around. if you want to do it the clean way, you will have to create ids (numeric or symbolic), associate your data-chunks with ids, pass the ids through pd's messaging system and look them up at the receiving side. pdp does it like this. an alternative might be mrpeach's string/blob patch, but then you would rely on a patched pd, which is not a very good idea. if you are not sure, then i suggest to not do it that way (unless you want to spend some time in getting into coding) otoh, why don't you just use the Gem framework? i guess that you could fit the IplImage into an imageStruct with not much overhead (but then i don't know this structure; if it is fundamentally different from Gem's imageStruct you might lose everything you gained speedwise) if nothing else works, it might be simplest to just write your own application (without pd) and send the data to pd via your favourite protocol (FUDI, OSC, SMTP...) ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd and Edirol UA-25
Ede Cameron wrote: After reading on the list about Edirol UA-25 I went out and got one on run on Debian. I can get sound when running in standard mode or midi in advanced but can't get both. I read on the list that some- one is running both midi and sound. Problem is the UA-25 seems to force 24bit in advanced mode which Pd won't run at or is there a way to get around this. Debian Etch Power Book 1.5 Edirol UA-25? ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list You shouldn't need to put the device in standard mode at all. Check if the snd_usb_audio module is loaded properly (lsmod | grep snd_usb_audio ). c. -- http://www.cesaremarilungo.com ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
I dont think I quite understood. I tried: #define FRAMEOUT frame IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, FRAMEOUT); with the same results. Maybe someone can dumb it down for me? Alain From: IOhannes m zmoelnig [EMAIL PROTECTED] Date: 2007/05/29 Tue AM 10:40:29 EDT To: [EMAIL PROTECTED] CC: Tim Boykett [EMAIL PROTECTED], pd-list@iem.at Subject: Re: [PD] opencv motion tracker external HELP! [EMAIL PROTECTED] wrote: Thanks for helping. Well I basically have a rough sketch of all the objects but I am having a tough time with the outlet system. In a nutshell opencv uses an image structure called typedef struct _IplImage. Acording to them The structure IplImage came from Intel Image Processing Library where the format is native. I can give you more information about it if you need it. My problem is sending the result from IplImage to an outlet and being able to receive it from an inlet. So far that is my bigest hurdle. I have this code: IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, frame); Obviously with more stuff in the middle but I keep getting this error from the compiler: whoa don't do that. if you are sure that you have to send pointers around, then you should a) have a look at Gem (where this is done) or GridFlow and b) don't do it (Gem is using this for legacy reasons); really. even though pd has pointers, they are not meant for passing arbitrary data around. if you want to do it the clean way, you will have to create ids (numeric or symbolic), associate your data-chunks with ids, pass the ids through pd's messaging system and look them up at the receiving side. pdp does it like this. an alternative might be mrpeach's string/blob patch, but then you would rely on a patched pd, which is not a very good idea. if you are not sure, then i suggest to not do it that way (unless you want to spend some time in getting into coding) otoh, why don't you just use the Gem framework? i guess that you could fit the IplImage into an imageStruct with not much overhead (but then i don't know this structure; if it is fundamentally different from Gem's imageStruct you might lose everything you gained speedwise) if nothing else works, it might be simplest to just write your own application (without pd) and send the data to pd via your favourite protocol (FUDI, OSC, SMTP...) ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
[EMAIL PROTECTED] wrote: I dont think I quite understood. I tried: #define FRAMEOUT frame IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, FRAMEOUT); with the same results. Maybe someone can dumb it down for me? just out or couriosity: how does this relate to my previous email? :-) sorry to not be much of a help here, but i currently have not the time to give you the deep insights into C/C++ and pd that you would be needed. mfga.sdr. IOhannes ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
Hi Alain, wouldn't it be a lot easier to take the system that you already have and use OSC or FIDO to send the values (that you were printing) to PD for further processing? I am greatly in favour of using different systems for different jobs and letting a protocol like OSC or fido (netsend) connect them together. I could easily help you with that problem, if the code is running already. Cheers, tim On 27/05/2007, at 10:35 PM, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: For the last 2 weeks I have been trying to write a motion tracking external using the blob motion tracker in opencv. I had success with writing a program that recieves a path to an avi and motion tracks the blobs and prints their position. Now I am writing the set of Pd externals using the same code with very little success. I need someone that knows what they are doing to look at my Pd code and show me what I am doing wrong. I have read and followed IOhannes guide on external writing. Also, I have looked at the zexy and pdp sorce code in order to learn but still I am not getting it to work. The externals are based on the already working code I was able to frankenstein together. I am calling it FTIR_Tools. It consist of the following (if I ever get them to work!): 1. FTIR_Cam: detects webcam and sends out frames to outlet. 2. FTIR_VPlayer: reads quicktimes from path and sends out frames to outlet. 3. FTIR_Tracker: tracks blobs, sends out matrix blob# position to outlet2 and frames to outlet 1. you can also turn on and off visuals for center point and bounding box. 4. FTIR_Window: displays frames in an X11 window. Please look at my code and show me how to fix it. I am getting nowhere. In the cvBloblib.zip is the program I put together called Tracker and the code called Tracker.cpp. If you want to see how it works drag it to terminal and follow it with a path to an .avi. You must have opencv and fink installed. If you have ploblems installing opencv post and I will be glad to help. Thanks, Alain FTIR_Tools(src).zip cvBloblib.zip ___ 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] ld flags
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Yo! Anyone can tell what should be the equivalent of this line on osx: ld -export_dynamic -shared -o pippo.pd_linux pippo.o -lc -lm ? i get ld: unknown flag: -export_dynamic and ld: unknown flag: -shared i had a look at the man id page and google but i am still confused. if there is someone who can tell me, or who managed to make the externals howto on osx, i'll be happy to share informations :) Cheers, Xname -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFGXEu1NvasaG3ULUwRAmaDAJ9DyirP5Ah7KHLWLbv6qO5s0QaTfQCgmE1P qP3DOkUjlDp114fE41D1pVI= =dhR2 -END PGP SIGNATURE- ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] ld flags
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Yo! Anyone can tell what should be the equivalent of this line on osx: ld -export_dynamic -shared -o pippo.pd_linux pippo.o -lc -lm ? i get ld: unknown flag: -export_dynamic and ld: unknown flag: -shared i had a look at the man id page and google but i am still confused. if there is someone who can tell me, or who managed to make the externals howto on osx, i'll be happy to share informations :) Cheers, Xname -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFGXE0oNvasaG3ULUwRAuT/AJ4/9JQTfHDvS/3NWFhA7dg2FQhv9gCgjWu8 ut3udkM2p8C4DgEueXFuBp0= =Rh2m -END PGP SIGNATURE- ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
Martin, Thanks for your insight. I will look into that. It seems like sprintf/atoi is what I need to be looking at. Alain From: [EMAIL PROTECTED] Date: 2007/05/29 Tue AM 11:51:36 EDT To: pd-list@iem.at CC: Tim Boykett [EMAIL PROTECTED], IOhannes m zmoelnig [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: Re: Re: [PD] opencv motion tracker external HELP! I dont think I quite understood. I tried: #define FRAMEOUT frame IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, FRAMEOUT); with the same results. Maybe someone can dumb it down for me? You can only work with atoms in pd's message system, and each atom usually contains a bang, a float or a symbol. You could convert the pointer to a float but it probably won't work because the pointer is a large integer that won't be accurately represented as a float. You could convert the pointer to a symbol using something like: char symstr[10]; t_symbol sym; sprintf(symstr, %p, frame); sym = gensym(symstr); ...then send sym through the outlet and convert it back to a pointer at the receiving end by extracting the string from the s_name field of the symbol and passing it to atol(). Martin ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
The Intel library struct is a different data type than the Pd symbol data type. Pd doesn't have any idea what your frame pointer is pointing to so it throw that error. You really need to have a working knowledge of C data types to do what you want to do. On 5/29/07, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: I dont think I quite understood. I tried: #define FRAMEOUT frame IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, FRAMEOUT); with the same results. Maybe someone can dumb it down for me? Alain From: IOhannes m zmoelnig [EMAIL PROTECTED] Date: 2007/05/29 Tue AM 10:40:29 EDT To: [EMAIL PROTECTED] CC: Tim Boykett [EMAIL PROTECTED], pd-list@iem.at Subject: Re: [PD] opencv motion tracker external HELP! [EMAIL PROTECTED] wrote: Thanks for helping. Well I basically have a rough sketch of all the objects but I am having a tough time with the outlet system. In a nutshell opencv uses an image structure called typedef struct _IplImage. Acording to them The structure IplImage came from Intel Image Processing Library where the format is native. I can give you more information about it if you need it. My problem is sending the result from IplImage to an outlet and being able to receive it from an inlet. So far that is my bigest hurdle. I have this code: IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, frame); Obviously with more stuff in the middle but I keep getting this error from the compiler: whoa don't do that. if you are sure that you have to send pointers around, then you should a) have a look at Gem (where this is done) or GridFlow and b) don't do it (Gem is using this for legacy reasons); really. even though pd has pointers, they are not meant for passing arbitrary data around. if you want to do it the clean way, you will have to create ids (numeric or symbolic), associate your data-chunks with ids, pass the ids through pd's messaging system and look them up at the receiving side. pdp does it like this. an alternative might be mrpeach's string/blob patch, but then you would rely on a patched pd, which is not a very good idea. if you are not sure, then i suggest to not do it that way (unless you want to spend some time in getting into coding) otoh, why don't you just use the Gem framework? i guess that you could fit the IplImage into an imageStruct with not much overhead (but then i don't know this structure; if it is fundamentally different from Gem's imageStruct you might lose everything you gained speedwise) if nothing else works, it might be simplest to just write your own application (without pd) and send the data to pd via your favourite protocol (FUDI, OSC, SMTP...) ___ 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] opencv motion tracker external HELP!
You are right it would be. It would also be easier to make a self contained external with just one object and just use pd message system to output a list. I appreciate your help. I guess I will try to finish what I started using Martins suggestions and work on a standalone app at the same time. Is there a good reference webpage on how to integrate OSC that you can point me to? would the cpu take a buigger performance hit this way? Alain From: Tim Boykett [EMAIL PROTECTED] Date: 2007/05/29 Tue AM 11:45:08 EDT To: [EMAIL PROTECTED] [EMAIL PROTECTED] CC: pd-list@iem.at, [EMAIL PROTECTED] Subject: Re: [PD] opencv motion tracker external HELP! Hi Alain, wouldn't it be a lot easier to take the system that you already have and use OSC or FIDO to send the values (that you were printing) to PD for further processing? I am greatly in favour of using different systems for different jobs and letting a protocol like OSC or fido (netsend) connect them together. I could easily help you with that problem, if the code is running already. Cheers, tim ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] ld flags
Hallo, xname hat gesagt: // xname wrote: Anyone can tell what should be the equivalent of this line on osx: ld -export_dynamic -shared -o pippo.pd_linux pippo.o -lc -lm I think, it's something with -bundle but the easiest thing to do would be if you check out some of the Makefiles in the CVS repository and look at their .pd_darwin-targets. Ciao -- Frank Barknecht _ __footils.org_ __goto10.org__ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] [PD-announce] mMm 0.3 atlantis
finally mMm has a working arrangersequencer with multiple pattern ready to produce cheap crappy techno tracks. several patches within mMm are based upon pd's help/browser, pd-list attachments or netpd instruments. http://puredata.info/Members/eni/mMm/mmm-0-3-atlantis the latest release is mmm-0.3.3-atlantis.zip cheers eni ___ 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] puredata evolution
This has been a fascinating thread about the direction of PD. I've been thinking about parallelism and PD as multi-core processors become common. How hard would it be to make PD able to take advantage of parallel architecture? I'm guessing that it is decidedly non-trivial, as lack of threading is already an issue in contention between the GUI and audio processing. Without some support for parallelism, PD could be going as fast as it will ever go -- the trend seems to be that CPU speeds will not be climbing much (at least not dramatically like they have until now), and increasing numbers of cores will be the path to greater speed and power. Is there any hope in this direction? Phil Stone ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Pd and Edirol UA-25
moin Ede, moin list, Well, I'm successfully running both MIDI and audio off the UA-25, also on debian (mostly) etch, and a ThinkPad T42... First of all, don't use OSS (emulation) -- I've had no luck here with the UA-25 in advance mode and Pd; as you say, probably due to 24-bititude. Do you have an ~/.asoundrc defined, and if so, what's in it? If you're choosing from the pd Audio Settings menu, grab the UA-25 (plug-in) entries, rather than one of the hardware entries. Also, I've had to run pd with the -rt switch (which required getting realtime capabilities patches working: urgh) when using ALSA directly, otherwise I get audio pops and eventual tried but could not sync errors. fyi, I run pd here with: [EMAIL PROTECTED]:~$ cat `which pd-ua25.sh` #!/bin/sh ( pd -rt -r 48000 -alsa -channels 2 -audiodev 6 $@ ) ( sleep 5 ; aconnect-usb2pd.perl; jack-chrt.sh ) ... where aconnect-usb2pd.perl does some magic with 'aconnect', and the (badly named) 'jack-chrt.sh' messes around with some scheduling priorities. Important to note: - pd's sample rate should probably match whatever you've chosen on the ua-25 - use alsa. - for me, -audiodev 6 is the 6th entry in the drop-down list of audio devices I get with the ua-25 plugged in (under normal circumstances), labelles UA-25 (plugin). good luck, Bryan On 2007-05-29 14:35:50, Ede Cameron [EMAIL PROTECTED] appears to have written: After reading on the list about Edirol UA-25 I went out and got one on run on Debian. I can get sound when running in standard mode or midi in advanced but can't get both. I read on the list that some- one is running both midi and sound. Problem is the UA-25 seems to force 24bit in advanced mode which Pd won't run at or is there a way to get around this. Debian Etch Power Book 1.5 Edirol UA-25? -- Bryan Jurish There is *always* one more bug. [EMAIL PROTECTED] -Lubarsky's Law of Cybernetic Entomology ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [declare]: -path seems not to be added to the searchpathes
On May 29, 2007, at 3:34 AM, Frank Barknecht wrote: Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote: Yeah, they are essentially the same thing. The advantages of using [declare] would be that the names are shorter and perhaps more readable in the context of that patch. Plus the help files would work :-/. IIRC, cliking Help on [myfolder/myabs] won't find the help file. If the help file was next to myabs in in myfolder/myabs-help.pd it would be found as usual for both cases. Ah right, I think it works (or doesn't work) the way I describe when using binary Pd objects. .hc Ciao -- Frank Barknecht _ __footils.org_ __goto10.org__ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list Man has survived hitherto because he was too ignorant to know how to realize his wishes. Now that he can realize them, he must either change them, or perish.-William Carlos Williams ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] ld flags
Check out externals/Makefile and packages/Makefile.buildlayout. You can see the Mac OS X, GNU/Linux, and Windows/MinGW build setup. .hc On May 29, 2007, at 11:56 AM, xname wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Yo! Anyone can tell what should be the equivalent of this line on osx: ld -export_dynamic -shared -o pippo.pd_linux pippo.o -lc -lm ? i get ld: unknown flag: -export_dynamic and ld: unknown flag: -shared i had a look at the man id page and google but i am still confused. if there is someone who can tell me, or who managed to make the externals howto on osx, i'll be happy to share informations :) Cheers, Xname -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFGXE0oNvasaG3ULUwRAuT/AJ4/9JQTfHDvS/3NWFhA7dg2FQhv9gCgjWu8 ut3udkM2p8C4DgEueXFuBp0= =Rh2m -END PGP SIGNATURE- ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list 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
Re: [PD] ld flags
On 5/29/07, xname [EMAIL PROTECTED] wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Yo! Anyone can tell what should be the equivalent of this line on osx: ld -export_dynamic -shared -o pippo.pd_linux pippo.o -lc -lm -bundle -undefined suppress -flat_namespace -o pippo.pd_linux pippo.o -lc -lm ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
I dont think I quite understood. I tried: #define FRAMEOUT frame IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, FRAMEOUT); with the same results. Maybe someone can dumb it down for me? You can only work with atoms in pd's message system, and each atom usually contains a bang, a float or a symbol. You could convert the pointer to a float but it probably won't work because the pointer is a large integer that won't be accurately represented as a float. You could convert the pointer to a symbol using something like: char symstr[10]; t_symbol sym; sprintf(symstr, %p, frame); sym = gensym(symstr); ...then send sym through the outlet and convert it back to a pointer at the receiving end by extracting the string from the s_name field of the symbol and passing it to atol(). Martin ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
I just realized I should be posting in the pd-dev list so from now on any questions I have relating to this project will be posted there. Martin, I am getting a weird error when I try sym = gensym(symstr); I get no match for 'operator=' in 'sym = gensym(((char*)( symstr)))' I dont know what thats all about. I have seen this used before with no problems. Alain From: [EMAIL PROTECTED] Date: 2007/05/29 Tue AM 11:51:36 EDT To: pd-list@iem.at CC: Tim Boykett [EMAIL PROTECTED], IOhannes m zmoelnig [EMAIL PROTECTED], [EMAIL PROTECTED] Subject: Re: Re: [PD] opencv motion tracker external HELP! I dont think I quite understood. I tried: #define FRAMEOUT frame IplImage *frame = 0; x-x_outlet = outlet_new(x-x_obj, s_anything); outlet_anything(x-x_outlet, FRAMEOUT); with the same results. Maybe someone can dumb it down for me? You can only work with atoms in pd's message system, and each atom usually contains a bang, a float or a symbol. You could convert the pointer to a float but it probably won't work because the pointer is a large integer that won't be accurately represented as a float. You could convert the pointer to a symbol using something like: char symstr[10]; t_symbol sym; sprintf(symstr, %p, frame); sym = gensym(symstr); ...then send sym through the outlet and convert it back to a pointer at the receiving end by extracting the string from the s_name field of the symbol and passing it to atol(). Martin ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
Hi Alain, I've used the OpenCV blobtracker with Pd before, and I simply send blob positions and sizes over UDP using u_pdsend.c I've attached my code and makefile... look in blobtrack.c and search for where I use the pdsend_init() and pdsend_message() functions... it's pretty simple. Then you just use [netreceive] in Pd and parse the list as you deem necessary. Hope this helps, -Mike P.S. my blobtracker code is meant for use with a live camera, not with .avi files. blobTracker.tar.gz Description: GNU Zip compressed data ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
Alain wrote: I am getting a weird error when I try sym = gensym(symstr); I get no match for 'operator=' in 'sym = gensym(((char*)( symstr)))' I dont know what thats all about. I have seen this used before with no problems. That looks like a c++ error to me, maybe you should be compiling it as c? Martin ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Theory and Techniques book available from World Scientific Press
Hi all, The book, Theory and Techniques of Electronic Music, is now available on paper from World Scientific Press: http://www.worldscibooks.com/compsci/6277.html It's still maintained on-line at the usual location: http://crca.ucsd.edu/~msp/techniques.htm cheers Miller ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
I think I figured it out. It looks like I have to use t_symbol *sym instead of t_symbol sym and the outlet has to be x-outlet_new(x- x_outlet0, *sym). That seemed to work. The weird problem I am having now it I get an error with the return(void *)x; I get error: return-statement with a value, in function returning 'void'. Now I see return(void *)x; on almost all the external codes so I don't get it. I am also getting an error on the void your_class_setup (void) { part too. Error: a function-definition is not allowed here before '{' token. I am confused. About compiling as C, the problem is that I am using c ++ headers from the opencv library and I don't know if I can compile as C? Thanks alot for your help. Alain On May 29, 2007, at 5:25 PM, [EMAIL PROTECTED] wrote: Alain wrote: I am getting a weird error when I try sym = gensym(symstr); I get no match for 'operator=' in 'sym = gensym(((char*)( symstr)))' I dont know what thats all about. I have seen this used before with no problems. That looks like a c++ error to me, maybe you should be compiling it as c? Martin ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
Thanks Mike, Its awsome how helpful people in this community can be. I will check out you code and modify it if need be, like add the option to use an avi in order to be able to calibrate things and such and I will post it. I will also continue to figure out the external because I think that would be a neater approach and cause I dont accept defeat very easily. Alain On May 29, 2007, at 4:55 PM, Mike Wozniewski wrote: Hi Alain, I've used the OpenCV blobtracker with Pd before, and I simply send blob positions and sizes over UDP using u_pdsend.c I've attached my code and makefile... look in blobtrack.c and search for where I use the pdsend_init() and pdsend_message() functions... it's pretty simple. Then you just use [netreceive] in Pd and parse the list as you deem necessary. Hope this helps, -Mike P.S. my blobtracker code is meant for use with a live camera, not with .avi files. blobTracker.tar.gz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] opencv motion tracker external HELP!
I see you have the ability to capture from an avi built in already: avi_name = argv[i]; if (avi_name) pCap = cvCaptureFromFile(avi_name); else pCap = cvCaptureFromCAM( 0 ) This is code looks great. I could figure it out from the code but if you have any use instructions let me know. It would be great to get a gui for this thing. I will try to figure that out. Thank you, Alain On May 29, 2007, at 6:58 PM, Nose Hair wrote: Thanks Mike, Its awsome how helpful people in this community can be. I will check out you code and modify it if need be, like add the option to use an avi in order to be able to calibrate things and such and I will post it. I will also continue to figure out the external because I think that would be a neater approach and cause I dont accept defeat very easily. Alain On May 29, 2007, at 4:55 PM, Mike Wozniewski wrote: Hi Alain, I've used the OpenCV blobtracker with Pd before, and I simply send blob positions and sizes over UDP using u_pdsend.c I've attached my code and makefile... look in blobtrack.c and search for where I use the pdsend_init() and pdsend_message() functions... it's pretty simple. Then you just use [netreceive] in Pd and parse the list as you deem necessary. Hope this helps, -Mike P.S. my blobtracker code is meant for use with a live camera, not with .avi files. blobTracker.tar.gz ___ 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] opencv motion tracker external HELP!
Sorry forgot to ask. Do you have a pd abstraction for this? If not I will see what I can cook up. I think iemmatrix might do the trick. Alain On May 29, 2007, at 8:08 PM, Nose Hair wrote: I see you have the ability to capture from an avi built in already: avi_name = argv[i]; if (avi_name) pCap = cvCaptureFromFile(avi_name); else pCap = cvCaptureFromCAM( 0 ) This is code looks great. I could figure it out from the code but if you have any use instructions let me know. It would be great to get a gui for this thing. I will try to figure that out. Thank you, Alain On May 29, 2007, at 6:58 PM, Nose Hair wrote: Thanks Mike, Its awsome how helpful people in this community can be. I will check out you code and modify it if need be, like add the option to use an avi in order to be able to calibrate things and such and I will post it. I will also continue to figure out the external because I think that would be a neater approach and cause I dont accept defeat very easily. Alain On May 29, 2007, at 4:55 PM, Mike Wozniewski wrote: Hi Alain, I've used the OpenCV blobtracker with Pd before, and I simply send blob positions and sizes over UDP using u_pdsend.c I've attached my code and makefile... look in blobtrack.c and search for where I use the pdsend_init() and pdsend_message() functions... it's pretty simple. Then you just use [netreceive] in Pd and parse the list as you deem necessary. Hope this helps, -Mike P.S. my blobtracker code is meant for use with a live camera, not with .avi files. blobTracker.tar.gz ___ 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] puredata evolution
it works, but you need to be able to recognize what additional dependencies are needed for your machine, or code modifications for your distro (different versions of gcc have different ideas of what constitutes a build error, diferent versions of link-in external shared libs are a big one too - generally this is ether discovered by through examining compile-time errors and runtime errors... it takes some work to get a functional build, but that is the nature of deve code, especially dev code from source repositories under active development. the currently implemented features are very compelling if you can get past the hurdles of getting a build, and all of the built-in objects are functional so you can do some patching with it. i'd say give it another try - good compelling and way to get knowledge of gcc, linking, etc. etc. too. the fine folks on #desiredata are very helpful for people attempting builds. regards - star On Tue, 2007-05-29 at 10:35 +0200, Damian Stewart wrote: Chris McCormick wrote: Yeah, I agree completely on all counts. Sometimes really great software comes out of forks. DesireData looks really interesting, and I know that nova isn't a fork, but it looks interesting too. Can't wait until some of these cool bits of software reach maturity (same goes for Pd)! i've never been able to get DesireData to work... -- Mechanize something idiosyncratic. ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Theory and Techniques book available from World Scientific Press
Congratulations on getting that out! I'll bet that's where you had disappeared to in the recent past. .hc On May 29, 2007, at 6:25 PM, Miller Puckette wrote: Hi all, The book, Theory and Techniques of Electronic Music, is now available on paper from World Scientific Press: http://www.worldscibooks.com/compsci/6277.html It's still maintained on-line at the usual location: http://crca.ucsd.edu/~msp/techniques.htm cheers Miller ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list [W]e have invented the technology to eliminate scarcity, but we are deliberately throwing it away to benefit those who profit from scarcity.-John Gilmore ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD i education
We've been using Pd to teach sound and soon sensors/interaction here: http://idmi.poly.edu I try to make all my materials freely available. It seems that we should all work together and come up with some kick-ass teaching materials. Plus I think it would save us all a lot of work in the long run. You might also be interested in Miller's new book which using Pd directly to teach DSP: http://www.worldscibooks.com/compsci/6277.html .hc On May 29, 2007, at 6:32 AM, Mikael Fernstrom wrote: I use PD with our MA/MSc students in Interactive Media and (some) in Music Technology here at the University of Limerick. http://www.csis.ul.ie/imedia/ http://www.ccmcm.ie/ http://www.idc.ul.ie/ - Mikael Fernström On 29 May 2007, at 09:39, Eirik Arthur Blekesaune wrote: Can anybody help me point out who uses PD to teach electronic music? .. (Algoritmic) Composistion Synthesis DSP-theory real-time performance What are the pros and cons for using it to teach DSP-theory? Best, Eirik Blekesaune ___ 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 http://at.or.at/hans/ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] ld flags
On May 29, 2007, at 2:39 PM, chris clepper wrote: On 5/29/07, xname [EMAIL PROTECTED] wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Yo! Anyone can tell what should be the equivalent of this line on osx: ld -export_dynamic -shared -o pippo.pd_linux pippo.o -lc -lm -bundle -undefined suppress -flat_namespace -o pippo.pd_linux pippo.o -lc -lm Sometimes -undefined dynamic_lookup can be useful too, or -bundle_loader /path/to/pd/bin/pd .hc ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list [W]e have invented the technology to eliminate scarcity, but we are deliberately throwing it away to benefit those who profit from scarcity.-John Gilmore ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] gui development (was puredata evolution)
On May 28, 2007, at 1:52 PM, Damian Stewart wrote: Kevin McCoy wrote: The gui needs work - do you mean we need more/better looking gui objects? When I was working on OS X, I couldn't really use very many gui objects at once because of Apple's crappy closed implementation of tcl/tk; the lag was terrible. Pd devs can't really do anything about that (though it is a huge problem). A significant portion of pd users are on OS X. I have used pd on Windows, OSX, and Linux, and in all cases the tcl/tk performance was about equivalent: good enough (I certainly don't notice any lag issues with OSX), but it started to break down once there were too many objects on screen. I understand this is a problem with tcl/tk. As I understand it, tcl/ tk is basically a semi-scripted programming language in itself, with a gazillion features that pd neither uses nor needs to use. It would be dead- easy to re-implement the current GUI in C or C++ using a cross-platform low- level graphics library, which would not only give us enormous visualisation capability, but I think is necessary to support any more advanced GUI development, since tcl/tk already slows down too much if there are a lot of lines or objects on-screen. This would also give us real-time data-structure visualisation as well, which would be *great*. Indeed this is a project I'd like to take on, but I can't penetrate the GUI code, can't figure out where anything hooks in to anything. Anyone care to give me some pointers? In a nutshell, the tricky bit is that there are two processes: pd (C) and pd-gui (Tcl). They actually communicate largely using pd messages, so that's not too hard. But there are also a number of situations where the C code is sending Tcl to pd-gui, and other oddnesses. I think the best thing to do is to start checking the mailing list archives and reading the code. This topic has been discussed a lot, and there is some good discussions on the structure there. Then come back to the pd-dev list with specific questions. Pd's gui definitely does need work, but without a clear roadmap it will be hard to say what priority that is, right? Watching that google talk has me thinking about all kinds of things. The GUI doesn't need to have a particular priority relative to any other parts, surely; GUI development and core development can occur in parallel; this would also have the nice side-effect of enforcing looser coupling between the GUI and the engine. That's one of the main drives of the desiredata project. I believe they aim to make a fork that is a compatible language, with substantial differences in the program itself. .hc -- damian stewart | +44 7854 493 796 | [EMAIL PROTECTED] frey | live art with machines | http://www.frey.co.nz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list http://at.or.at/hans/ ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] puredata evolution
That is a tough problem. On a basic level, Pd is ready right now for two processors since it uses two separate processes: pd and pd-gui. But the pd process does the heavy lifting, so it's a bit uneven. As for taking advantage of multiple cores, that is a lot more complicated. Max/MSP does have some support for threading (Overdrive mode), but it seems to me that it is a hack. It does work, but it often leads to programs that are very hard to debug since it is difficult to handle the non-determinancy of the situation. .hc On May 29, 2007, at 1:32 PM, Phil Stone wrote: This has been a fascinating thread about the direction of PD. I've been thinking about parallelism and PD as multi-core processors become common. How hard would it be to make PD able to take advantage of parallel architecture? I'm guessing that it is decidedly non-trivial, as lack of threading is already an issue in contention between the GUI and audio processing. Without some support for parallelism, PD could be going as fast as it will ever go -- the trend seems to be that CPU speeds will not be climbing much (at least not dramatically like they have until now), and increasing numbers of cores will be the path to greater speed and power. Is there any hope in this direction? Phil Stone ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list If you are not part of the solution, you are part of the problem. ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] gui development (was puredata evolution)
Hans-Christoph Steiner said : On May 28, 2007, at 1:52 PM, Damian Stewart wrote: Kevin McCoy wrote: The gui needs work - do you mean we need more/better looking gui objects? When I was working on OS X, I couldn't really use very many gui objects at once because of Apple's crappy closed implementation of tcl/tk; the lag was terrible. Pd devs can't really do anything about that (though it is a huge problem). A significant portion of pd users are on OS X. I have used pd on Windows, OSX, and Linux, and in all cases the tcl/tk performance was about equivalent: good enough (I certainly don't notice any lag issues with OSX), but it started to break down once there were too many objects on screen. I understand this is a problem with tcl/tk. As I understand it, tcl/ tk is basically a semi-scripted programming language in itself, with a gazillion features that pd neither uses nor needs to use. It would be dead- easy to re-implement the current GUI in C or C++ using a cross-platform low- level graphics library, which would not only give us enormous visualisation capability, but I think is necessary to support any more advanced GUI development, since tcl/tk already slows down too much if there are a lot of lines or objects on-screen. This would also give us real-time data-structure visualisation as well, which would be *great*. Indeed this is a project I'd like to take on, but I can't penetrate the GUI code, can't figure out where anything hooks in to anything. Anyone care to give me some pointers? In a nutshell, the tricky bit is that there are two processes: pd (C) and pd-gui (Tcl). They actually communicate largely using pd messages, so that's not too hard. But there are also a number of situations where the C code is sending Tcl to pd-gui, and other oddnesses. I think the best thing to do is to start checking the mailing list archives and reading the code. This topic has been discussed a lot, and there is some good discussions on the structure there. Then come back to the pd-dev list with specific questions. when i run pd with -d 1 option, all the traffic seem to be Tcl code. i think its more than a number of situations.. Pd's gui definitely does need work, but without a clear roadmap it will be hard to say what priority that is, right? Watching that google talk has me thinking about all kinds of things. The GUI doesn't need to have a particular priority relative to any other parts, surely; GUI development and core development can occur in parallel; this would also have the nice side-effect of enforcing looser coupling between the GUI and the engine. That's one of the main drives of the desiredata project. I believe they aim to make a fork that is a compatible language, with substantial differences in the program itself. yes, issues with GUI is one of the main area which desiredata tries to address. and yes, one of its goal is also to stay compatiable with the main Pd. cheers chun .hc -- damian stewart | +44 7854 493 796 | [EMAIL PROTECTED] frey | live art with machines | http://www.frey.co.nz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list http://at.or.at/hans/ ___ 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] Theory and Techniques book available from World Scientific Press
Yes, awesome news! I'll pick up a copy as soon as $78 shows up : ). I've already learned so much from reading the PDF version. Thanks : ). On 5/29/07, Hans-Christoph Steiner [EMAIL PROTECTED] wrote: Congratulations on getting that out! I'll bet that's where you had disappeared to in the recent past. .hc On May 29, 2007, at 6:25 PM, Miller Puckette wrote: Hi all, The book, Theory and Techniques of Electronic Music, is now available on paper from World Scientific Press: http://www.worldscibooks.com/compsci/6277.html It's still maintained on-line at the usual location: http://crca.ucsd.edu/~msp/techniques.htm cheers Miller ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list [W]e have invented the technology to eliminate scarcity, but we are deliberately throwing it away to benefit those who profit from scarcity.-John Gilmore ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Theory and Techniques book available from WorldScientific Press
Well, being somewhat addicted to technical manuscripts. (Amazon sends me gifts at Christmas).. $78 dollars is a bargain, especially considering that PD is FREE Great Manuscript (I will buy the book), the best I have read on the topic, congratulations!! Michael -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Miller Puckette Sent: Tuesday, May 29, 2007 10:27 PM To: pd-list@iem.at Subject: Re: [PD] Theory and Techniques book available from WorldScientific Press Well, don't impoverish yourselves... it's essentially identical to the PDF version except more suited for reading on the beach. Next time you're in a school library, you can always drop a hint to the librarian to get one :) M On Tue, May 29, 2007 at 11:02:38PM -0400, Luke Iannini (pd) wrote: Yes, awesome news! I'll pick up a copy as soon as $78 shows up : ). I've already learned so much from reading the PDF version. Thanks : ). On 5/29/07, Hans-Christoph Steiner [EMAIL PROTECTED] wrote: Congratulations on getting that out! I'll bet that's where you had disappeared to in the recent past. .hc On May 29, 2007, at 6:25 PM, Miller Puckette wrote: Hi all, The book, Theory and Techniques of Electronic Music, is now available on paper from World Scientific Press: http://www.worldscibooks.com/compsci/6277.html It's still maintained on-line at the usual location: http://crca.ucsd.edu/~msp/techniques.htm cheers Miller ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list [W]e have invented the technology to eliminate scarcity, but we are deliberately throwing it away to benefit those who profit from scarcity.-John Gilmore ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ 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] puredata evolution
I think it depends on the application for the most part, we can't get a generic speedup from using multiple cores (forgive me if wrong) that would apply to every single pd program. but some types of computations such as large ffts can be performed faster when distributed to different cores, in which case, the code for the fft has to be parallelized a priori. Plus, the memory is tricky. You can have a memory access bottleneck, when using a shared memory resource between multiple processors. It's definitely a problem that is worth solving, but I'm not suggesting to do anything about it soon. It sounds like something that would require a complete top-down re-design to be successful. yikes Chuck On 5/29/07, Hans-Christoph Steiner [EMAIL PROTECTED] wrote: That is a tough problem. On a basic level, Pd is ready right now for two processors since it uses two separate processes: pd and pd-gui. But the pd process does the heavy lifting, so it's a bit uneven. As for taking advantage of multiple cores, that is a lot more complicated. Max/MSP does have some support for threading (Overdrive mode), but it seems to me that it is a hack. It does work, but it often leads to programs that are very hard to debug since it is difficult to handle the non-determinancy of the situation. .hc On May 29, 2007, at 1:32 PM, Phil Stone wrote: This has been a fascinating thread about the direction of PD. I've been thinking about parallelism and PD as multi-core processors become common. How hard would it be to make PD able to take advantage of parallel architecture? I'm guessing that it is decidedly non-trivial, as lack of threading is already an issue in contention between the GUI and audio processing. Without some support for parallelism, PD could be going as fast as it will ever go -- the trend seems to be that CPU speeds will not be climbing much (at least not dramatically like they have until now), and increasing numbers of cores will be the path to greater speed and power. Is there any hope in this direction? Phil Stone ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list If you are not part of the solution, you are part of the problem. ___ 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