[PD] coll object
Hi all Apoligies if this is not the correct place for asking these sorts of questions. Can the 'coll' object read items from a text file? What I want to do is have several messages stored in a textfile, load them into coll and then output them one at a time. Is this possible, everytime I try and load a text file into coll I get the error ... coll: bad atom error (miXed): coll: error reading text file 'C:/Documents and Settings/Donal/Desktop/pd project/clips/masterText.txt Thanks and regards Donal___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD VideoPedia Project
Hallo, i've signed up a 'pilot' PD Videopedia community channel. http://www.youtube.com/PureDataVideopedia user: PureDataVideopedia pass: puredata i've also started organizing playlists: http://www.youtube.com/profile_play_list?user=PureDataVideopedia Please feel free to manage/add/move... contents. You can also ulpoad new original videos. Actually they have my mail address, but if you want and if it is possible i can give pd-list mail. Enjoy j --- Hans-Christoph Steiner [EMAIL PROTECTED] ha scritto: I think the main problem with youtube is that you can't download the source video. Bascally they try to prevent you from downloading it. You can download the .flv with some hacks, but it would be nicer to use a site that encourages people to download videos in a format that is easily reusable (e.g. archive.org). As long as people also publish the videos elsewhere in a good format, I don't think it's a problem having them up on youtube. And youtube works write now, so I think that this youtube channel is definitely a worthwhile project. .hc On Dec 12, 2007, at 5:31 PM, giucant wrote: I use youtube mainly because it is simple and everybody know it and yea, i like vacuum-cleaners, above all their sound... ;-) i agree with you about having a pd video search engine even embedded in a dedicated pdpedia wiki page. But i have thought a PD Videopedia mainly as a community effort to make filters and to extend the community itself... i have some experience in music/audio teaching and training: a beginner prefers a filtered information because actually he doesn't know exactly what to search in mare magnum, and categories can help him in the pd discovery. and there is always a rizoma danger... geeks like Deleuze's rizomas, but students need Porfirio's trees... (a really weak thought :) maybe we should have the two paradigms search-engine/filtered-information embedded in a pdpedia wiki page using a a PDmotion video server (but i really don't know how to implement it, i'd need your help). What do you think? In the meantime please continue to signal video stuff and feel free to partecipate/sponsor this project. ciao j --- Jean-Noël Montagné [EMAIL PROTECTED] ha scritto: OK, there are and there will be more videos about PD on youtube and colleagues. The problem is not to organize PD contents on youtube, this monopolistic video vacuum-cleaner, but to organize the links to the youtube/dailymotion etc. PD videos to find the right video at the right time. Some solutions: -create a video links page on the official puredata.info wiki, with categories index, links and descriptions of each film +tag about the language of the video. -create an international video links page on pdpedia wiki, with categories index, links and descriptions of each film+tag about the language of the video. but I would prefer: -Install a PDmotion video server, exempted from advertising, ( Oggvorbis/theora/icecast or Red5 driven ), and use PDpedia. JN ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail: http://it.docs.yahoo.com/nowyoucan.html ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list I spent 33 years and four months in active military service and during that period I spent most of my time as a high class muscle man for Big Business, for Wall Street and the bankers. - General Smedley Butler ___ L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail: http://it.docs.yahoo.com/nowyoucan.html ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] coll object
coll uses a special format to store its data, it always uses an ID, then a comma and then the message content. this has some advantages (sorting, lookup) but does not work with all textfiles. I suggest to use textfile or messagefile. or, if you want to use coll, then look at the fileformat and save your textfiles, for example like 1, first message; 2, lalalal; 3, and so on; 4, 123 40734 9831 1320487132 132; marius Donal Carey wrote: Hi all Apoligies if this is not the correct place for asking these sorts of questions. Can the 'coll' object read items from a text file? What I want to do is have several messages stored in a textfile, load them into coll and then output them one at a time. Is this possible, everytime I try and load a text file into coll I get the error ... coll: bad atom error (miXed): coll: error reading text file 'C:/Documents and Settings/Donal/Desktop/pd project/clips/masterText.txt Thanks and regards Donal ___ 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] coll object
This is the right place to ask! :) coll is supposed to be able to open textfiles, but I think they are supposed to have a specific format. It is meant for Max/MSP compatibility, you might have better luck with the native Pd versions: textfile and qlist .hc On Dec 13, 2007, at 9:33 AM, Donal Carey wrote: Hi all Apoligies if this is not the correct place for asking these sorts of questions. Can the 'coll' object read items from a text file? What I want to do is have several messages stored in a textfile, load them into coll and then output them one at a time. Is this possible, everytime I try and load a text file into coll I get the error ... coll: bad atom error (miXed): coll: error reading text file 'C:/Documents and Settings/Donal/Desktop/pd project/clips/masterText.txt Thanks and regards Donal ___ 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] coll object
Thanks Derek - this took care of the problem ! :) Donal - Original Message - From: Derek Holzer [EMAIL PROTECTED] To: Donal Carey [EMAIL PROTECTED] Cc: pd-list@iem.at Sent: Thursday, December 13, 2007 4:17 PM Subject: Re: [PD] coll object Did you use [col] to create the textfile? Or is it a random textfile? Formatting is important. A sample: 1, ah_yes.wav; 2, hokoji.loop.wav; 3, kenchoji.loop.wav; Maybe try to format it in this way? d. Donal Carey wrote: Hi all Apoligies if this is not the correct place for asking these sorts of questions. Can the 'coll' object read items from a text file? What I want to do is have several messages stored in a textfile, load them into coll and then output them one at a time. Is this possible, everytime I try and load a text file into coll I get the error ... coll: bad atom error (miXed): coll: error reading text file 'C:/Documents and Settings/Donal/Desktop/pd project/clips/masterText.txt Thanks and regards Donal ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- derek holzer ::: http://www.umatic.nl ::: http://blog.myspace.com/macumbista ---Oblique Strategy # 202: Back up a few steps. What else could you have done? ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] kml files
hi, google earth uses a special format to save geo information data (kml files). I am trying to build a (simple) gem earth projector and read these files (and also some other file types...) The conversion should be easy, but precision might become a problem. this is a shape in kml file format (longitude, latitude, height) coordinates -112.3348783983763,36.1514008468736,100 -112.3372535345629,36.14888517553886,100 -112.3356068927954,36.14781612679284,100 -112.3350034807972,36.14846469024177,100 -112.3358353861232,36.1489624162954,100 -112.3345888301373,36.15026229372507,100 -112.3337937856278,36.14978096026463,100 -112.3331798208424,36.1504472788618,100 -112.3348783983763,36.1514008468736,100 /coordinates the precision is 16 digits, so I guess double float. does anyonw know, if opengl can handle that? or any quick ideas for how to approach that? marius. ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] coll object
Derek Holzer wrote: Did you use [col] to create the textfile? Or is it a random textfile? Formatting is important. A sample: 1, ah_yes.wav; 2, hokoji.loop.wav; 3, kenchoji.loop.wav; Maybe try to format it in this way? Or if it's plain text, use read file.txt (for ';'-terminated messages) or read cr file.txt (for one message per line) and [textfile]. Then output one at a time with rewind and bang, iirc. However, if you need random access, then indeed [textfile] is insufficient and/or inefficient. Hope this helps, Claude d. Donal Carey wrote: Hi all Apoligies if this is not the correct place for asking these sorts of questions. Can the 'coll' object read items from a text file? What I want to do is have several messages stored in a textfile, load them into coll and then output them one at a time. Is this possible, everytime I try and load a text file into coll I get the error ... coll: bad atom error (miXed): coll: error reading text file 'C:/Documents and Settings/Donal/Desktop/pd project/clips/masterText.txt Thanks and regards Donal -- http://claudiusmaximus.goto10.org ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] kml files
If I'm doing it right, single precision float should be able to represent latitude and longitude to within about two meters. If more precision than that is needed, you'll want to use tr to change periods (as well as commas) into spaces so that you get lines like: -112 3348783983763 36 1514008468736 100 Then filter for whatever range of integer latitudes and longitudes you're actually looking at. Then you should get 1 degree x 2^-24, better than a centimeter. cheers Miller On Thu, Dec 13, 2007 at 11:51:14AM -0500, marius schebella wrote: hi, google earth uses a special format to save geo information data (kml files). I am trying to build a (simple) gem earth projector and read these files (and also some other file types...) The conversion should be easy, but precision might become a problem. this is a shape in kml file format (longitude, latitude, height) coordinates -112.3348783983763,36.1514008468736,100 -112.3372535345629,36.14888517553886,100 -112.3356068927954,36.14781612679284,100 -112.3350034807972,36.14846469024177,100 -112.3358353861232,36.1489624162954,100 -112.3345888301373,36.15026229372507,100 -112.3337937856278,36.14978096026463,100 -112.3331798208424,36.1504472788618,100 -112.3348783983763,36.1514008468736,100 /coordinates the precision is 16 digits, so I guess double float. does anyonw know, if opengl can handle that? or any quick ideas for how to approach that? marius. ___ 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] honk abstractions
hi list, over the last months, i've been programming a couple of abstractions to enhance faster and comfortable programming in pd. maybe they're useful for anyone else out there. some ideas arent't new, of course, and there might exist similar objects. i called the collection honk abstractions. download: http://www.kreidler-net.de/honk.zip documentation: http://www.kreidler-net.de/honk.html or http://www.kreidler-net.de/honk.pdf some of them require [at least] pd-extended 0.38 help is inside the patches. it contents: GLUE linvert - inverts order of atoms of a list listerize-fifo - like serialize but for symbols, turns a list of symbols into a list, in order: first in first out listerize-lifo - like serialize but for symbols, turns a list of symbols into a list, in order: last in first out mergerize-fifo - turns a stream of symbols into one symbol, in order: first in first out mergerize-lifo - turns a stream of symbols into one symbol, in order: last in first out nbangs - sequence incoming bangs schange - like change but for symbols, outputs its input only when it changes TIME malibu - counts in a certain speed zetro - random metronome MATH noreprand - exactly like random, but without repetitions. outputs random numbers in given range. TABLES ntables - creates a certain number of tables in subpatch GUI- bak - like bang, but size can be given by argument dac - comfortable control of audio output display - displays a number or symbol in variable size hamp- comfortable horizontal potentiometer hr - like horizontal radio, but number of buttons can be given by argument gop - comfortable graph-on-parent control hs - horizontal slider with range as arguments sf - soundfile-player for different formats (wav, mp3, ogg) tok - like toggle, but size can be given by argument vamp- comfortable vertical potentiometer vr - like vertical radio, but number of buttons can be given by argument vs - vertical slider with range as arguments vum - quick-to-build VU-Meter MISC klist - text-based sequencer with absolute time destinations midi2symbol - MIDI tone numbers to german tone name conversion AUDIO GLUE compress~ - every amplitude that lies under a certain threshold will be amplified to a reference amplitude limit~ - every amplitude that lies over a certain threshold will be dampened to a reference amplitude pitchshift~ - granular transposition AUDIO OSCILLATORS sinesum~- oscillator with various partials waveform~ - waveform oscillator (sine/saw/triangle/square/pulse/random) regards, johannes -- www.kreidler-net.de -- Pt! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] kml files
On Thu, 13 Dec 2007, Miller Puckette wrote: If I'm doing it right, single precision float should be able to represent latitude and longitude to within about two meters. longitude has to be from -180 to 180. The epsilon is then the previous power of two divided by 2^23. In metres this is 0.61 metre near equator. This is the worst case. For latitude the precision is twice better than longitude at equator. In northern europe and in alaska, the longitude precision is the same as the latitude precision. It's twice more precise to use signed values than unsigned values, which is why I wouldn't use longitudes from 0 to 360. _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] symbolatom: why does it not allow to type spaces?
On Wed, 12 Dec 2007, Hans-Christoph Steiner wrote: This is purely a practical issue. If your patches don't work across Pd and Desiredata, then they are not compatible. It's that simple. Compatibility is one goal that can get in the way of fixing bugs. Why not just write separate bugfree versions and leave the existing names to be compatible objects? Basically, unless desiredata is compatible, it not very useful to Pd users. It's not my job to force you to figure out what's the trouble that you want me to get into. If you don't even look like you've read what I write and just restate the same thing, it's not communication. _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] symbolatom: why does it not allow to type spaces?
On Wed, 12 Dec 2007, Hans-Christoph Steiner wrote: Full answer: you use the tcl flags to save the arguments. This works fine in binbufs: -text this is my label -font Lucida Sans 10 bold -fg black -bg green Check tkwidgets/text.c for more info. so, how do you put double-quotes within labels? how do you put a literal dollarsign within labels? what about open-bracket? _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Inlet Proxy object example
Thanks for this, it looks like a nice, clean example of how to do this. Very valuable. I'm sure I'll have questions about this stuff. For example, right now I am in the process of figuring out how to parse the object arguments for ?, then dynamically create an inlet for each ? it finds. I believe the standard is to use ?? as the escape mechanism, so that has to be included as well in the parsing, but that's not too hard. I am thinking that one proxy class will be enough, then I just make one instance of the proxy class for each ? found, thereby making an anything inlet for each SQL placeholder. I guess the proxy class should include the pointers for making a linked list of proxy classes to store all the instances. I was trying to figure out how this is done in [expr], but that code is super strange, so no luck yet. Anyone else have examples of dynamically creating inlets in C based on object arguments? .hc On Dec 10, 2007, at 11:34 AM, Mike McGonagle wrote: Hello everyone, Over the weekend, I was given a huge lesson in both PD and humility... Anyway, what this is is an example of how to create an inlet proxy object to handle arbitrary list input on a cold right inlet. It is something that was extracted from the 'x_list.c' source, and generalized to be just a raw object. The example is not a useful object, but illustrates how the C source framework is designed. I posted the files to ( http://puredata.info/Members/mjmogo ). Feedback is welcome and expected... Mike -- Peace may sound simple—one beautiful word— but it requires everything we have, every quality, every strength, every dream, every high ideal. —Yehudi Menuhin (1916–1999), musician ___ 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 simple gemmouse query
Hi All, thanks for everyone's responses last time, they were really helpful. I'm just wondering if anyone can explain (as though I'm a five year old) how I would use gemmouse to control the speed at which a sound sample is playing (presuming its looping)?? Thanks in advance! Rebecca. ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] symbolatom: why does it not allow to type spaces?
On Dec 13, 2007, at 12:58 PM, Mathieu Bouchard wrote: On Wed, 12 Dec 2007, Hans-Christoph Steiner wrote: This is purely a practical issue. If your patches don't work across Pd and Desiredata, then they are not compatible. It's that simple. Compatibility is one goal that can get in the way of fixing bugs. Why not just write separate bugfree versions and leave the existing names to be compatible objects? Basically, unless desiredata is compatible, it not very useful to Pd users. It's not my job to force you to figure out what's the trouble that you want me to get into. If you don't even look like you've read what I write and just restate the same thing, it's not communication. In the past you have said that you want to make DesireData compatible with Pd. I am pointing out a possible incompatibility. If you don't want to make it compatible, that is your choice. .hc 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
Re: [PD] symbolatom: why does it not allow to type spaces?
On Dec 13, 2007, at 1:00 PM, Mathieu Bouchard wrote: On Wed, 12 Dec 2007, Hans-Christoph Steiner wrote: Full answer: you use the tcl flags to save the arguments. This works fine in binbufs: -text this is my label -font Lucida Sans 10 bold -fg black -bg green Check tkwidgets/text.c for more info. so, how do you put double-quotes within labels? I should correct the above line, it's not quite right: -text {this is my label} -font {Lucida Sans 10 bold} -fg black -bg green AFAIK, using the {} as quotes means it should had over everything inside of those brackets. So {} should show a double quote. If you look at the code in externals/tkwidgets/text.c, you'll see I am just letting Tcl format the strings using text cget -text, then writing that to a file via a binbuf. how do you put a literal dollarsign within labels? Donno, any suggestions? what about open-bracket? This one has stumped me, and I've asked a bit in #tcl, but no luck. Any suggestions? Did you get it working? What is actually more important, IMHO, is a way to insert a open-bracket into a text widget using a message. Using [key 123( then lots of escaping in C hasn't worked for me either. .hc ¡El pueblo unido jamás será vencido! ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Inlet Proxy object example
Hans-Christoph Steiner wrote: I was trying to figure out how this is done in [expr], but that code is super strange, so no luck yet. Anyone else have examples of dynamically creating inlets in C based on object arguments? pdlua does this, the relevant functions in pdlua/src/lua.c are: // the lua constructor calls this with object pointer and inlet count pdlua_object_createinlets(); // this initializes a proxy inlet pdlua_proxyinlet_init(); Source browseable here: https://devel.goto10.org/filedetails.php?repname=maximuspath=%2Fpdlua%2Fsrc%2Flua.crev=0sc=0 Claude -- http://claudiusmaximus.goto10.org ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Another simple gemmouse query
Hello, Have a look at this patch. I hope it will help you. ++ Jack gemmouseAndSound.pd Description: Binary data Le 13 déc. 07 à 19:08, Rebecca Schatz a écrit : Hi All, thanks for everyone's responses last time, they were really helpful. I'm just wondering if anyone can explain (as though I'm a five year old) how I would use gemmouse to control the speed at which a sound sample is playing (presuming its looping)?? Thanks in advance! Rebecca. ___ 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] Inlet Proxy object example
Hans-Christoph Steiner wrote: I was trying to figure out how this is done in [expr], but that code is super strange, so no luck yet. Anyone else have examples of dynamically creating inlets in C based on object arguments? str_new() in mrpeach/str/str.c adds an extra inlet for some of its arguments, not proxy inlets though. Martin ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] PD VideoPedia Project
Vade~ Please do keep CDM informed. It would be a great PR boost to Pd, and I know that you and Peter Kirn have made some wonderful expositions on the benefits of Pd on the blogs in the past. It would be very much welcomed! ~Kyle On Dec 12, 2007 12:52 PM, vade [EMAIL PROTECTED] wrote: I think this is a great idea. Do you mind if I mention it on Create Digital Motion? This is exactly what the community needs. On Dec 12, 2007, at 10:23 AM, giucant wrote: Dear list, there are many good video stuff out there about pd: tutorials, docs, pieces of art etc... I've also noted this is a good method to start understanding pd (and digital audio as well). What do you think about an 'official' community Youtube channel with original contents and theme-playlists? Original channel contents should be: - videos from pd-conventions - presentations and lessons by developers (Hans, Dr. Pukette etc...) - stuff by goto10 and pure:dyne geeks - other... Theme-playlist should catalog existing (and new) videos in specific categories: - Documentation - Tutorials - DSP - Synth - Phisical computing (arduino...) - GEM - other... Some links to start with: http://www.youtube.com/oggro http://www.youtube.com/miya6611 http://www.youtube.com/vreahli http://www.youtube.com/pidipid http://www.youtube.com/jkantTube (my tube) http://www.youtube.com/view_play_list?p=B3BCCFC9EBFBFAAE (a playlist i've made) What do you think about this project? Are there someone possibly interested in help managing contents? Let me know. Ciao j ___ L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail: http://it.docs.yahoo.com/nowyoucan.html ___ 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://perhapsidid.wordpress.com http://myspace.com/kyleklipowicz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] symbolatom: why does it not allow to type spaces?
On Thu, 13 Dec 2007, Hans-Christoph Steiner wrote: In the past you have said that you want to make DesireData compatible with Pd. Yes, I want it! I am pointing out a possible incompatibility. You don't even know what compatibility is! If you don't want to make it compatible, that is your choice. I choose compatibility! This is why I don't want to do it your way! _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] symbolatom: why does it not allow to type spaces?
On Thu, 13 Dec 2007, Hans-Christoph Steiner wrote: I should correct the above line, it's not quite right: -text {this is my label} -font {Lucida Sans 10 bold} -fg black -bg green AFAIK, using the {} as quotes means it should had over everything inside of those brackets. So {} should show a double quote. You can also backslash double-quotes instead. how do you put a literal dollarsign within labels? Donno, any suggestions? backslash it! what about open-bracket? This one has stumped me, and I've asked a bit in #tcl, but no luck. backslash it! suggestions? Did you get it working? What is actually more important, IMHO, is a way to insert a open-bracket into a text widget using a message. Using [key 123( then lots of escaping in C hasn't worked for me either. 123 is not a bracket, it's a brace. But for either the solution is the same: backslash it! _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Mon, 10 Dec 2007, Hans-Christoph Steiner wrote: I started a pdpedia page on the topic, please add anything useful: http://wiki.puredata.info/en/proxy_objects You copied from my email. Emails are property of the sender unless otherwise specified. For publicly visible emails it doesn't seem like a big issue, but you can't claim a GNU FDL license on content that you don't own. That said, I agree with putting any information from me from pd-list on the wiki unless I specify otherwise, but I want you to know that in theory you're supposed to ask and in practice it would be better to ask. _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Mon, 10 Dec 2007, Hans-Christoph Steiner wrote: For a place where you are expecting a number, you can protect against a SQL injection attack by merely putting a [float] before the message box with the SQL in it. In other situations, I think that Perl has a pretty decent idea: a SQL quote function. Perl has also a pretty decent idea, which is to allow placeholders, which automatically quotes so that you don't have to do it nor even think about it. I rarely ever wrote any Perl code that would access a SQL database in any other way than using placeholders. It's for safety but also not to have to think about strings, so that using SQL feels most like using an array. I know that you know about Perl's (and most any other's) placeholders, but I really mean that one should almost never have to use [sqlquote] at all, and things are easier if one doesn't have to use it. - the names ones could be supported as selectors to the hot inlet: what about selectors that conflict with existing functionality of the object? e.g. if a column is called symbol or whatever... what about columns with the same name as methods that will be defined in future versions of [psql] ? _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] honk abstractions
Johannes~ These objects are very nice, and would be a great contribution to Pd-extended! Thanks so much for sharing them. One thing that would be helpful for you to do is to create a simple object-help.pd file for each object. The reason this is preferred over the help being within the abstraction (which is still a nice thing to have) is simple. When you open the abstraction by itself, it doesn't have all the nice functions of a loaded abstraction, rather it is like a normal patch. To really show off how someone can use your abstraction (and give them a nice point of departure to cut/paste into their own projects) it is customary and appreciated to write a simple wrapper patch (*-help.pd) that implements the abstraction in the wild. For instance, I had to create a new file called honktest.pd within your honk folder in order to test out your (very awesome) abstractions. So that's just my own humble two cents (not worth much compared to the Euro as of now). Again, thanks so much for sharing your tools! ~Kyle On Dec 13, 2007 11:04 AM, Johannes Kreidler [EMAIL PROTECTED] wrote: hi list, over the last months, i've been programming a couple of abstractions to enhance faster and comfortable programming in pd. maybe they're useful for anyone else out there. some ideas arent't new, of course, and there might exist similar objects. i called the collection honk abstractions. download: http://www.kreidler-net.de/honk.zip documentation: http://www.kreidler-net.de/honk.html or http://www.kreidler-net.de/honk.pdf some of them require [at least] pd-extended 0.38 help is inside the patches. it contents: GLUE linvert - inverts order of atoms of a list listerize-fifo - like serialize but for symbols, turns a list of symbols into a list, in order: first in first out listerize-lifo - like serialize but for symbols, turns a list of symbols into a list, in order: last in first out mergerize-fifo - turns a stream of symbols into one symbol, in order: first in first out mergerize-lifo - turns a stream of symbols into one symbol, in order: last in first out nbangs - sequence incoming bangs schange - like change but for symbols, outputs its input only when it changes TIME malibu - counts in a certain speed zetro - random metronome MATH noreprand - exactly like random, but without repetitions. outputs random numbers in given range. TABLES ntables - creates a certain number of tables in subpatch GUI- bak - like bang, but size can be given by argument dac - comfortable control of audio output display - displays a number or symbol in variable size hamp- comfortable horizontal potentiometer hr - like horizontal radio, but number of buttons can be given by argument gop - comfortable graph-on-parent control hs - horizontal slider with range as arguments sf - soundfile-player for different formats (wav, mp3, ogg) tok - like toggle, but size can be given by argument vamp- comfortable vertical potentiometer vr - like vertical radio, but number of buttons can be given by argument vs - vertical slider with range as arguments vum - quick-to-build VU-Meter MISC klist - text-based sequencer with absolute time destinations midi2symbol - MIDI tone numbers to german tone name conversion AUDIO GLUE compress~ - every amplitude that lies under a certain threshold will be amplified to a reference amplitude limit~ - every amplitude that lies over a certain threshold will be dampened to a reference amplitude pitchshift~ - granular transposition AUDIO OSCILLATORS sinesum~- oscillator with various partials waveform~ - waveform oscillator (sine/saw/triangle/square/pulse/random) regards, johannes -- www.kreidler-net.de -- Pt! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- - - - -- http://perhapsidid.wordpress.com http://myspace.com/kyleklipowicz ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Mon, 10 Dec 2007, Hans-Christoph Steiner wrote: It is useful to represent the pieces in Pd space, so you can understand what's going on. That's one reason why I advocate having the core object represent the connection to the database rather than a query. Otherwise, it's starts to become more like Max/MSP's mega-objects (coll, zl, etc) that are really like mini-applications than programming. I don't see your point. [zl] acts more like a namespace prefix than an actual class, so, it's really not much less modular than what it could be: most of the time it wouldn't make much of a difference to split it in smaller classes except splitting the help patch into tiny bits with more header and footer than actual content. [coll] needs it like that because the data sits within [coll], it's not functional like [zl] is. Pd's arrays are likewise, but with less methods. Neither [zl] nor [coll] seems to me like they have anything to do with the way to handle multiple connections. [coll] would be relevant if it offered a way to share the same collection across several [coll] objects. I don't know what's a mini-application nor how it's supposed to always differ from what a class is. _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Mon, 10 Dec 2007, Hans-Christoph Steiner wrote: The other somewhat common style that I saw in my searches was printf patterns (%s, %f, etc). In Pd, [makefilename], [makesymbol], [sprintf], and perhaps others use this syntax. The single ? notation seems to be supported by at least these, if you want to call that specific: Qt, PerlDBI, Perl's DBD::Pg, RubyDBI, PHP PDO, Java JDBC, MySQL, Oracle. Well, maybe I shouldn't have said specific, but when I look at any PHP code that I find, it seems that they haven't discovered what's a placeholder yet, for example. So, it seems that it's not so universal. I think it is quite important to reuse existing syntax rather than introducing new syntax. Minimal syntax is really one of Pd's biggest strengths. Since these lines would be pure SQL, I think it would be appropriate to use a common SQL syntax. If you wanted to reuse existing Pd syntax, you could abstract out SQL syntax completely and make a database interface that fully feels like Pd. The Rails web framework has something like that. I just had a thought, SQL injection relies on being able to send semi-colons in text fields. This is not true. I have already posted an example in this thread on how to delete a whole table using SQL injection without a semicolon. You can't transmit a semicolon in a message in Pd, This is not true. You can't type one in a messagebox, that's all. You can make one anytime with [makefilename]. You can edit a pd file and insert a sufficiently backslashed semicolon and it will appear. Also, a non-backslashed semicolon in an objectbox is parsed as a symbol of 1 character and it is passed as an argument to the newmethod. Calling a newmethod is to send a message. then no one will ever be able to send a semi-colon to [sqlite]/[psql]. Pd would always interpret the semi-colon before the object received it on its cold inlet. AFAIK, that eliminates basically all of the really bad SQL injection attacks. Dream on! _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Tue, 11 Dec 2007, Jamie Bullock wrote: I like this idea. What do you think about using an implicit receive-symbol, '$0-psql.1001', '$0-psql.1002' etc? No, because if you don't have an explicit receive-symbol, then you can't share database connections and logins in the way that you choose, unless you force all sql objects to be connected directly to a database connection object. Would it be possible for psql to automatically discover the psql.conn's receive symbol by using pd_findbyclass(), and then reading a variable in the object struct? What I'm saying is the other way around. You start with a user-specified symbol and you use it to find the database connection object. The query object doesn't know the database object until it looks up the symbol. I'm really telling you to do it like [tabread]; what you are thinking about now, is not like [tabread]. _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Thu, 2007-12-13 at 14:28 -0500, Mathieu Bouchard wrote: On Mon, 10 Dec 2007, Hans-Christoph Steiner wrote: I started a pdpedia page on the topic, please add anything useful: http://wiki.puredata.info/en/proxy_objects You copied from my email. Emails are property of the sender unless otherwise specified. For publicly visible emails it doesn't seem like a big issue, but you can't claim a GNU FDL license on content that you don't own. That said, I agree with putting any information from me from pd-list on the wiki unless I specify otherwise, but I want you to know that in theory you're supposed to ask and in practice it would be better to ask. that said, i think it would be best, if people would put their information into the wiki themselves. less work for hans, less issues with copyright. 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] [psql] object hand-holding
On Tue, 11 Dec 2007, IOhannes m zmoelnig wrote: i don't claim that Gem is a good example. however, i also don't see how the data-flow vs control-flow is especially bad in Gem. As long as you pass a gem message around that is only a pointer to a shared state that all objects modify, it's all explicit control-flow all over the place. The contents of the gem messages doesn't matter at all, and the only thing that matters is the order in which the messages are sent. That's 100% controlflow and 0% dataflow. _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] honk abstractions
More goodies. Thanks for making and sharing these Johannes. On Thu, 13 Dec 2007 18:04:25 +0100 Johannes Kreidler [EMAIL PROTECTED] wrote: hi list, over the last months, i've been programming a couple of abstractions to enhance faster and comfortable programming in pd. maybe they're useful for anyone else out there. some ideas arent't new, of course, and there might exist similar objects. i called the collection honk abstractions. download: http://www.kreidler-net.de/honk.zip documentation: http://www.kreidler-net.de/honk.html or http://www.kreidler-net.de/honk.pdf some of them require [at least] pd-extended 0.38 help is inside the patches. it contents: GLUE linvert - inverts order of atoms of a list listerize-fifo- like serialize but for symbols, turns a list of symbols into a list, in order: first in first out listerize-lifo- like serialize but for symbols, turns a list of symbols into a list, in order: last in first out mergerize-fifo- turns a stream of symbols into one symbol, in order: first in first out mergerize-lifo- turns a stream of symbols into one symbol, in order: last in first out nbangs- sequence incoming bangs schange - like change but for symbols, outputs its input only when it changes TIME malibu- counts in a certain speed zetro - random metronome MATH noreprand - exactly like random, but without repetitions. outputs random numbers in given range. TABLES ntables - creates a certain number of tables in subpatch GUI- bak - like bang, but size can be given by argument dac - comfortable control of audio output display - displays a number or symbol in variable size hamp - comfortable horizontal potentiometer hr- like horizontal radio, but number of buttons can be given by argument gop - comfortable graph-on-parent control hs- horizontal slider with range as arguments sf- soundfile-player for different formats (wav, mp3, ogg) tok - like toggle, but size can be given by argument vamp - comfortable vertical potentiometer vr- like vertical radio, but number of buttons can be given by argument vs- vertical slider with range as arguments vum - quick-to-build VU-Meter MISC klist - text-based sequencer with absolute time destinations midi2symbol - MIDI tone numbers to german tone name conversion AUDIO GLUE compress~ - every amplitude that lies under a certain threshold will be amplified to a reference amplitude limit~- every amplitude that lies over a certain threshold will be dampened to a reference amplitude pitchshift~ - granular transposition AUDIO OSCILLATORS sinesum~ - oscillator with various partials waveform~ - waveform oscillator (sine/saw/triangle/square/pulse/random) regards, johannes -- www.kreidler-net.de -- Pt! Schon vom neuen GMX MultiMessenger gehört? Der kann`s mit allen: http://www.gmx.net/de/go/multimessenger ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- Use the source ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] honk abstractions
yes thanks. have just added this to my blog: http://practical-data.wikidot.com ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Dec 13, 2007 1:59 PM, Mathieu Bouchard [EMAIL PROTECTED] wrote: On Mon, 10 Dec 2007, Hans-Christoph Steiner wrote: The other somewhat common style that I saw in my searches was printf patterns (%s, %f, etc). In Pd, [makefilename], [makesymbol], [sprintf], and perhaps others use this syntax. The single ? notation seems to be supported by at least these, if you want to call that specific: Qt, PerlDBI, Perl's DBD::Pg, RubyDBI, PHP PDO, Java JDBC, MySQL, Oracle. Well, maybe I shouldn't have said specific, but when I look at any PHP code that I find, it seems that they haven't discovered what's a placeholder yet, for example. So, it seems that it's not so universal. As someone who has never really used Placeholders, the only sorts of things that I can see them being useful for are when you need to do a lot of inserts or deletes, or for other statements that will be executed repeatedly. From what I am gathering by these discussions is that the useage of placeholders allows the SQL statement to be compiled and then with each execution of the statement, the values of the placeholders are substituted. This might be one reason you don't see them all that often in PHP, I would imagine that PHP doesn't really do a whole bunch of repetitive stuff. I think it is quite important to reuse existing syntax rather than introducing new syntax. Minimal syntax is really one of Pd's biggest strengths. Since these lines would be pure SQL, I think it would be appropriate to use a common SQL syntax. If you wanted to reuse existing Pd syntax, you could abstract out SQL syntax completely and make a database interface that fully feels like Pd. The Rails web framework has something like that. I don't know about you guys, but my original goal on this was to basically allow a user to input SQL and it would return the result sets. I just wanted to keep it simple. But I can see a use for using Placeholders, especially when you have a lot of data to store (and it also kind of vindicates my original idea of putting the SQL directly in the creation args... [wink, wink, nudge...]). This idea of doing this to make this more PD-like I think would be a waste of time, as SQL is pretty simple and a LOT of people already know it. Why create another language? I just had a thought, SQL injection relies on being able to send semi-colons in text fields. This is not true. I have already posted an example in this thread on how to delete a whole table using SQL injection without a semicolon. At the same time, should our external be on the look out for these sorts of things? One of the original ideas was to not give the external any, if at all, knowledge of SQL. Meaning, it wouldn't parse the SQL, nor would it try to do any generation of SQL. It just expects that the user is HONEST (that is what these concerns over Injection are, right), and the SQL they entered is what they meant. These things being said, I am not adverse to the new design model, and I hope to get something up over the weekend. While we can try to protect against various things, those that want to be malicious will do so anyway. Of course, we could eliminate these problems altogether, and just use an embedded database ONLY... (just kidding...) Mike ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] kml files
On Thu, 13 Dec 2007, Mathieu Bouchard wrote: longitude has to be from -180 to 180. The epsilon is then the previous power of two divided by 2^23. In metres this is 0.61 metre near equator. This is the worst case. For latitude the precision is twice better than longitude at equator. In northern europe and in alaska, the longitude precision is the same as the latitude precision. It's twice more precise to use signed values than unsigned values, which is why I wouldn't use longitudes from 0 to 360. Oh duh, my computation was wrong. A degree is about 111319 metres of longitude around the equator, or 38 metres of latitude. The max longitude error is 2^-16 degree or 1.69 metre and the max latitude error is 2^-17 degree or 0.85 metre. I don't remember how I computed it the first time. You can get twice better worst case by using values ranging from -1 to +1 (because 1 is a power of two, so it lies at the boundary of a new precision level) _ _ __ ___ _ _ _ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] [psql] object hand-holding
On Thu, Dec 13, 2007 at 03:12:18PM -0500, Mathieu Bouchard wrote: On Tue, 11 Dec 2007, IOhannes m zmoelnig wrote: i don't claim that Gem is a good example. however, i also don't see how the data-flow vs control-flow is especially bad in Gem. As long as you pass a gem message around that is only a pointer to a shared state that all objects modify, it's all explicit control-flow all over the place. The contents of the gem messages doesn't matter at all, and the only thing that matters is the order in which the messages are sent. That's 100% controlflow and 0% dataflow. It would be way cool if gem was truly dataflow, with the [cube] or another geometry source at the top of the stack and then geometry/colour/texture modifiers all the way down until a [render] object. Imagine doing audio style filtering on geometry streams. One can dream I guess. Best, Chris. PS This is not a criticism of Mark, IOhannes, Chris's work on Gem - it's a great library and I love using it! Thanks for all your hard work. --- http://mccormick.cx ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
[PD] Gem, arguments to particle domains.
Hi, all. Below is an excerpt from the help file to [part_source] I found in the latest Pd-extended (stable), describing the arguments understood by the object. --- From here --- domain: one of point, line, triangle, plane, box, sphere, cylinder, cone, blob, disc, rectangle arguments: up to 9 floats, defining the specified domain (like x y z for point, x1 y1 z1 x2 y2 z2 for line, x y z r for sphere, ...). The meaning of the arguments depends -of course- on the domain. --- Up to here --- As far as I know, there is a lot left unexplained in this particular help file attached to Pd, especially on how many arguments each domain likes to eat and what the floats represent. Embracingly, I did not know till a few days ago that there is another API which is the mother of Gems's particle handler and that the arguments are explained in its documents. For example, I've just learned this morning that sphere takes 4 arguments and their purpose seem to correspond to what is said in the API manual. Am I just going through unnecessary trouble because of me not knowing of a manual pakced with Gem, or shall I be taking notes of my discoveries so that I can perhaps commit to the help file? -- David Shimamoto ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] windows latency down to 15 milliseconds
asio4all is certainly a nifty program. I'd like to share a story regarding this application I thought was interesting. -- A few months ago I purchased a MIDI controller by Alesis which came with a soft synth. As far as I know, most soft synths have pages in their manual explaining methods of reducing latency on your sound card. Adjust this buffer, increase value if choppy cause you've gone too far, else just give up and go for a better card... ya-di-ya... Same with this Alsis product? No... The manual just noted links to asio4all as a solution. This application (at least the version I have installed) has extremely political messages in its GUI. I hope it does not effect consumers impressions towards Alesis. -- David Shimamoto I was using my old laptop running xubuntu for a while because the latency time of running pd on windows. My newer Gateway laptop has poor performance with the sound card in Linux, so I have to run windows on it. Before, the lowest I could get it the latency without pops was 60 milliseconds. This was very frustrating, because allot of what I am doing is real-time guitar processing and 60 milliseconds is way too slow to use. But I found a way to get it much much lower. First by using the asio4all driver http://www.asio4all.com/ with built in sound. This makes a huge difference. I have tried other asio drivers, but this one performs incredibly with pd. I cannot say how it will perform on external cards, but on my built in Sigmatel, it works great. Second, by setting windows xp to run pd at real-time priority. You do this by right clicking the pd process in windows taskmaster and setting it to real time. Doing this I can get the latency as low as I had it on Linux, and possibly lower. I haven't tried lower than 15, so I'm not sure ;) But I've played for over an hour on windows with no glitches or pops, well other than the ones I was making on purpose. Justin Robert www.justinrobert.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