Terminal data into Pd
Hi all,
As the title suggests, does anyone know how to get some terminal data into a useable form in Pd?
Terminal command via [shell]
lsof -c Terminal
Comes back with
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Terminal 320 sergery cwd DIR 14,2 1224 389127 /Users/sergery
Terminal 320 sergery txt REG 14,2 1089648 138776 /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
Terminal 320 sergery txt REG 14,2 2295501 288102 /System/Library/Fonts/LucidaGrande.dfont
Terminal 320 sergery txt REG 14,2 5425538 293864 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/Extras2.rsrc
Terminal 320 sergery txt REG 14,2 13525940 224074 /private/var/folders/vb/vbpUhSc-HtShEQmAZppmw++++TI/-Caches-/com.apple.ATS/annex_aux
Terminal 320 sergery txt REG 14,2 10244512 400652 /usr/share/icu/icudt36l.dat
Terminal 320 sergery txt REG 14,2 1832384 370074 /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/Resources/SArtFile.bin
Terminal 320 sergery txt REG 14,2 11144400 270259 /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera
Terminal 320 sergery txt REG 14,2 531341 288103 /System/Library/Fonts/Monaco.dfont
Terminal 320 sergery txt REG 14,2 19336 224106 /private/var/folders/vb/vbpUhSc-HtShEQmAZppmw++++TI/-Caches-/com.apple.IntlDataCache.le.sbdl
Terminal 320 sergery txt REG 14,2 808008 352421 /System/Library/Keyboard Layouts/AppleKeyboardLayouts.bundle/Contents/Resources/AppleKeyboardLayouts-L.dat
Terminal 320 sergery txt REG 14,2 100788 246657 /System/Library/Caches/com.apple.IntlDataCache.le.kbdx
Terminal 320 sergery txt REG 14,2 144580 293934 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/HIToolbox.rsrc
Terminal 320 sergery txt REG 14,2 490410 293847 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/English.lproj/Localized.rsrc
Terminal 320 sergery txt REG 14,2 5836820 369904 /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/Resources/ArtFile.bin
Terminal 320 sergery txt REG 14,2 2396160 553076 /Library/Caches/com.apple.LaunchServices-023501.csstore
Terminal 320 sergery txt REG 14,2 1059792 393626 /usr/lib/dyld
Terminal 320 sergery txt REG 14,2 139087872 431216 /private/var/db/dyld/dyld_shared_cache_i386
Terminal 320 sergery 0r CHR 3,2 0t0 36655364 /dev/null
Terminal 320 sergery 1 PIPE 0x23baee0 16384
Terminal 320 sergery 2 PIPE 0x23baee0 16384
Terminal 320 sergery 3r REG 14,2 5425538 293864 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/Extras2.rsrc
Terminal 320 sergery 4 PIPE 0x23b812c 16384
Terminal 320 sergery 5 PIPE 0x23b80c8 16384
Terminal 320 sergery 6 PIPE 0x23ba7d8 16384
Terminal 320 sergery 7 PIPE 0x23ba83c 16384
Terminal 320 sergery 9r REG 14,2 144580 293934 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/HIToolbox.rsrc
Terminal 320 sergery 10r REG 14,2 490410 293847 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/English.lproj/Localized.rsrc
Terminal 320 sergery 12u CHR 15,0 0t105 36958084 /dev/ptmx
PostOpChopShop:~ sergery$ lsof -c Terminal
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Terminal 320 sergery cwd DIR 14,2 1224 389127 /Users/sergery
Terminal 320 sergery txt REG 14,2 1089648 138776 /Applications/Utilities/Terminal.app/Contents/MacOS/Terminal
Terminal 320 sergery txt REG 14,2 2295501 288102 /System/Library/Fonts/LucidaGrande.dfont
Terminal 320 sergery txt REG 14,2 5425538 293864 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/Extras2.rsrc
Terminal 320 sergery txt REG 14,2 13525940 224074 /private/var/folders/vb/vbpUhSc-HtShEQmAZppmw++++TI/-Caches-/com.apple.ATS/annex_aux
Terminal 320 sergery txt REG 14,2 10244512 400652 /usr/share/icu/icudt36l.dat
Terminal 320 sergery txt REG 14,2 1832384 370074 /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/Resources/SArtFile.bin
Terminal 320 sergery txt REG 14,2 11144400 270259 /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera
Terminal 320 sergery txt REG 14,2 531341 288103 /System/Library/Fonts/Monaco.dfont
Terminal 320 sergery txt REG 14,2 19336 224106 /private/var/folders/vb/vbpUhSc-HtShEQmAZppmw++++TI/-Caches-/com.apple.IntlDataCache.le.sbdl
Terminal 320 sergery txt REG 14,2 808008 352421 /System/Library/Keyboard Layouts/AppleKeyboardLayouts.bundle/Contents/Resources/AppleKeyboardLayouts-L.dat
Terminal 320 sergery txt REG 14,2 100788 246657 /System/Library/Caches/com.apple.IntlDataCache.le.kbdx
Terminal 320 sergery txt REG 14,2 144580 293934 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/HIToolbox.rsrc
Terminal 320 sergery txt REG 14,2 490410 293847 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/English.lproj/Localized.rsrc
Terminal 320 sergery txt REG 14,2 5836820 369904 /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/Resources/ArtFile.bin
Terminal 320 sergery txt REG 14,2 2396160 553076 /Library/Caches/com.apple.LaunchServices-023501.csstore
Terminal 320 sergery txt REG 14,2 1059792 393626 /usr/lib/dyld
Terminal 320 sergery txt REG 14,2 139087872 431216 /private/var/db/dyld/dyld_shared_cache_i386
Terminal 320 sergery 0r CHR 3,2 0t0 36655364 /dev/null
Terminal 320 sergery 1 PIPE 0x23baee0 16384
Terminal 320 sergery 2 PIPE 0x23baee0 16384
Terminal 320 sergery 3r REG 14,2 5425538 293864 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/Extras2.rsrc
Terminal 320 sergery 4 PIPE 0x23b812c 16384
Terminal 320 sergery 5 PIPE 0x23b80c8 16384
Terminal 320 sergery 6 PIPE 0x23ba7d8 16384
Terminal 320 sergery 7 PIPE 0x23ba83c 16384
Terminal 320 sergery 9r REG 14,2 144580 293934 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/HIToolbox.rsrc
Terminal 320 sergery 10r REG 14,2 490410 293847 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Resources/English.lproj/Localized.rsrc
Terminal 320 sergery 12u CHR 15,0 0t3717 36958084 /dev/ptmx
I'd like to get all this data into Pd somehow.
At some point I'd like to write it to a file and then search through it for the file name that I want. I'm having trouble though. Any ideas?
Arrays of symbols, lists, messages
mpf... can you - briefly - explain, how?
Or, better maybe, I explain, what I want to do.
I want to "parse" incoming MIDI messages.
for example: a midi controller message (ctlin) of #99 (NRPN# MSB) on channel#15, followed by a cc#98 (NRPN# LSB) on channel#15, followed by a cc#06 (value MSB) on channel#15, followed by cc#38 (value LSB) should send a message "NRPN#(msb*128+lsb) value (valueMSB*128+LSB).
Thus, I need to store up to 4 ctlin messages and compare their cc# for the right order (99, 98, 6, 38) and wether they are send on the same channel.
I did this using [ctlin]-[pack f f f]->[list-prepend]->[list-split]->feedback to list-prepend, so an incoming ctlin-messages is stored in the first place of a "buffer" of 4 ctlin-messages, whereas the previous ctlin-messages are shifted right out of the buffer.
problem is: the ctlin-messages could be send with different channels, so that a "NRPN-message" (cc#99,cc#98,cc#6,cc#38) could be interrupted by another cc# on another channel.
So, I need to have a buffer for ctlin-messages of each MIDI channel, and not only one buffer for all incoming ctlin-messages.
Now, if I could store lists per channel in a table of lists...
Midi CC confusion
sorry it took so long to get back. (tour). thank you for taking the time.
i just have [ctlin] going to [ctlout]. but after a few minutes ofplaying, i see lip(cc#18) controlling cc#2 data and cc#2 sending nothing not returning to 0 and notes hanging. my wind controller seems to be working properly. itworks with everything else.
I really appreciate it.
-----begin-------
#N canvas 0 0 450 300 10;
#X floatatom 70 224 5 0 0 0 - - -;
#X floatatom 135 224 5 0 0 0 - - -;
#X text 69 240 pitch;
#X text 134 241 velocity;
#X text 152 194 note on messages;
#X floatatom 503 179 5 0 0 0 - - -;
#X floatatom 678 178 5 0 0 0 - - -;
#X text 539 178 program change;
#X text 723 179 pitch bend;
#X obj 75 296 -;
#X floatatom 101 272 5 0 0 0 - - -;
#X floatatom 75 324 5 0 0 0 - - -;
#X obj 188 270 s vel;
#X obj 75 354 noteout;
#X obj 503 280 pgmout;
#X obj 678 282 bendout;
#X obj 75 134 notein;
#X obj 505 142 pgmin;
#X obj 678 147 bendin;
#X floatatom 866 -38 5 0 0 0 - - -;
#X floatatom 923 -40 5 0 0 0 - - -;
#X text 864 -23 value;
#X text 922 -21 ctrl nr;
#X text 908 -180 controller messages;
#X obj 868 -122 f;
#X obj 870 -154 t b f;
#X obj 868 -92 pack f f;
#X obj 866 -66 unpack f f;
#X obj 359 -220 ctlin 2 1;
#X obj 344 -139 ctlout 2 1;
#X floatatom 353 -185 5 0 0 0 - - -;
#X floatatom 245 -187 5 0 0 0 - - -;
#X obj 251 -222 ctlin 18 1;
#X obj 236 -141 ctlout 18 1;
#X floatatom 454 -180 5 0 0 0 - - -;
#X floatatom 549 -182 5 0 0 0 - - -;
#X floatatom 636 -179 5 0 0 0 - - -;
#X floatatom 722 -178 5 0 0 0 - - -;
#X obj 460 -215 ctlin 16 1;
#X obj 445 -134 ctlout 16 1;
#X obj 555 -217 ctlin 17 1;
#X obj 540 -136 ctlout 17 1;
#X obj 642 -214 ctlin 80 1;
#X obj 627 -133 ctlout 80 1;
#X obj 728 -213 ctlin 81 1;
#X obj 713 -132 ctlout 81 1;
#X connect 0 0 9 0;
#X connect 1 0 12 0;
#X connect 1 0 13 1;
#X connect 5 0 14 0;
#X connect 6 0 15 0;
#X connect 9 0 11 0;
#X connect 10 0 9 1;
#X connect 11 0 13 0;
#X connect 16 0 0 0;
#X connect 16 1 1 0;
#X connect 17 0 5 0;
#X connect 18 0 6 0;
#X connect 24 0 26 0;
#X connect 25 0 24 0;
#X connect 25 1 26 1;
#X connect 26 0 27 0;
#X connect 27 0 19 0;
#X connect 27 1 20 0;
#X connect 28 0 30 0;
#X connect 30 0 29 0;
#X connect 31 0 33 0;
#X connect 32 0 31 0;
#X connect 34 0 39 0;
#X connect 35 0 41 0;
#X connect 36 0 43 0;
#X connect 37 0 45 0;
#X connect 38 0 34 0;
#X connect 40 0 35 0;
#X connect 42 0 36 0;
#X connect 44 0 37 0;
------end--------
Grannie basher - delay line granulator
if you're talking about midi controllers [ctlin] is what you're looking for. the simplest way to figure things out is route the outputs of [ctlin] into number boxes to figure out all the controller numbers; on my oxygen 8 (which has some wacky controller #'s, one knob is 81, one is 14, etc. etc.) once i know which knob is which i made abstractions named [knob1] [knob2] [knob3] etc. that basically just have [ctlin 81] routed to an outlet (for instance). what's great about this is it gives you 0-127 (standard midi values) but you can easily scale those (route that into a [/ 127] to get 0-1 for instance, then multiply that by any value to get 0-n). as long as your keyboard is getting into pd the channel number is pretty irrelevant, you only really need that with multiple controllers coming in on different channels.
hope this helps, by right clicking on [ctlin] and going to "help" it should bring up the help patch explaining in more detail, and from there you should be able to find all the help patches with all the other midi patches [notein] [makenote] etc.
Pipes screensaver
it's basically a 3D grid / cubic honeycomb, with a finite number of different things that can be in each cube, eg:
empty
pipe growing from bottom to top, or front to top with a bend (etc, there are 6 * 5 = 30 ways for the pipe to grow)
pipe from bottom to top (etc, there are 6 * 5 / 2 = 15 ways for the completed pipe to exist, as both ends are equal)
so that's 46 states for each cell, assuming there's only 1 colour of pipe 
then you can have 1 variable which is %grown (assuming all pipes grow at the same speed), which cycles 0->100%, when it reaches 100% the cell changes state from growing to fixed and the next cell changes from empty to growing
you can probably figure out some cellular automaton rules for "growing pipes", maybe with some random element too, but you might get collisions - to avoid collisions you need some weird nonlocal algorithm probably
Dual core
i'm working with PDP/Pidip on video and audio mixing - and i am on the edge of processor power, on 100% utilisation audio begins to sound weird
i'm thinking if dual-core processor helps, don't know if PDP/pidip is capable of running in multiple threads and use second core
i.m using pdp_live~ for playing xvid avis, mixer, two xv otput windows and some audio processing
anybody has experience with using dual core? I don't want to run two instances of PD beacause audio and video are connected and i'd have to send video data between them and i don't believe i would work in reasonable speed
thanx
orx
Six String Arpeggiator
Attached is a patch I banged together before my GF got home from work. It takes midi messages from my GR-50 guitar interface and arpeggiates them. It has several methods of arpeggiation including a 6 step sequencer. If you are not familiar with how the GR-XX series works, they can send each guitar strings midi values on a seperate channel, which is the mode I use with this patch. If you don't have a GR, or midi equipment at all, just fiddle with the six number boxes and hook it up to an Osc~.
Feedback on:
the use of GEM 'Counter' object
and
Detecting which strings have been plucked (re-plucked) in order to create more dynamic textures.
Would be appreciated!
Thanks,
Nestor
L'oeuvre ouverte|PureData Convention '07 - Call for Proposals
[VERSION FRANÇAISE CI-DESSOUS]
* August 21st-26th, 2007, Montréal Canada
* Deadline for artworks/performances and workshops: February 28th 2007
* Deadline for papers: March 31st 2007
http://convention.puredata.org
The PureData Convention Steering Committee is now accepting proposals
for participation in L'oeuvre ouverte (the Open Work), the 2nd
International PureData Convention. L'oeuvre ouverte invites an open
relation between the artwork and the public as well as open attitudes
and practices in the fields of programming, artistic creation and
scientific research. It will bring together artists, developers and
writers who develop, use and reflect on PureData.
The Convention will acknowledge the broad range of artistic and
technical disciplines that make use of the software and will address
questions of openness and accessibility. It will provide a theoretical
and artistic context for the understanding of the aesthetics and
politics of Free / Open Source Software culture.
Selected proposals will reflect varied perspectives and outlooks on
the artistic possibilities of free software and hardware that emanate
from a wide-ranging community. These include, but are not restricted
to connections to art, science and society as well as demonstration of
innovative and intuitive interactions. We encourage a wide range of
submissions from all levels of proficiency with the software as well
as from emergent and diverse PureData communities. Submissions will be
evaluated by peer review committees.
Proposals are sought in the following categories:
Artwork/Performances:
The selected artworks should make use of PureData. All forms of audio
and visual art including real-time interactive works, improvisations
with technology, instrumental/electroacoustic mixes, sound
installations, performances, network art, robotics, software art and
interdisciplinary work are welcome.
Papers and posters:
We are accepting papers that offer varying perspectives on technical,
social, cultural as well as art theory/historical aspects of PureData
or the aesthetics and politics of Free / Open Source Software (FOSS)
culture.
Demos:
Externals, Performance patches, Packages of abstractions, sensors and
physical computing interfaces, etc.
Workshops:
Beginner to advanced level hands-on workshops, installation
help, DIY etc.
::applicants are invited to submit in multiple categories::
please read the application guidelines:
http://convention.puredata.org/guidelines
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
L'oeuvre ouverte|Congrès PureData 2007 - Appel de propositions
* Du 21 au 26 août 2007, Montréal, Canada
* Appel à participation -- Jusqu'au 28 février pour les projets
artistiques et les ateliers, le 31 mars pour les exposés.
http://convention.puredata.org/convention07-fr
Le comité organisateur du Congrès de PureData accepte maintenant les
propositions en vue de participer à L'oeuvre ouverte, 2e Congrès
international de PureData. L'oeuvre ouverte propose une relation
d'ouverture entre l'oeuvre d'art et le public et encourage les
attitudes et les pratiques ouvertes dans les domaines de la
programmation, de la création artistique et de la recherché
scientifique. Le congrès réunira artistes, développeurs et théoriciens
qui sont les créateurs de PureData, qui exploitent le logiciel ou en
font l'objet de leur réflexion.
Le Congrès témoignera de toute la gamme des disciplines artistiques et
techniques qui exploitent le logiciel libre et s'intéressera aux
questions d'ouverture et d'accessibilité. Il servira de cadre
théorique et artistique pour la compréhension des aspects esthétiques
et politiques propres à la culture du logiciel libre.
Les propositions retenues refléteront les nombreuses perspectives que
le logiciel libre et ses applications, émanant d'une collectivité
diversifiée, offrent en matière de possibilités artistiques, qu'il
s'agisse, notamment, de jonctions établies entre l'art, la science et
la société ou de la présentation d'interactions innovatrices et
intuitives. Les propositions les plus diverses sont les bienvenues,
peu importe le degré de compétence de l'auteur à l'égard du logiciel.
L'invitation est lancée, entre autres, aux collectifs de PureData en
émergence. Les propositions seront évaluées par des comités de pairs.
Les propositions doivent se situer dans les catégories suivantes:
Oeuvres d'art/installations:
les œuvres de toute nature, produites à l'aide de PureData, soit toute
forme d'art audio et visuel, y compris les œuvres interactives en
temps réel, les improvisations technologiques, les pièces
instrumentales et électroacoustiques, les installations sonores, les
performances, l'art robotique et télématique et les œuvres
multidisciplinaires.
Exposés et affiche:
communications apportant diverses perspectives sur les aspects
techniques, sociaux, culturels, l'histoire de l'art de PureData, de
même que sur les aspects esthétiques et politiques de la culture du
logiciel libre.
Démonstrations:
périphériques, outils de performance, extras, senseurs et interfaces, etc.
Ateliers:
travaux pratiques de niveau débutant à avancé, aide aux
installations, activités manuelles, etc.
SVP lisez les lignes directrices:
http://convention.puredata.org/guidelines-fr
::Les intéressés sont invités à faire des propositions de nature multiple::
Serial object?
see :
[url=http://iem.kug.ac.at/pdb/query.html?all=y&alb=y&qry=serial
]http://iem.kug.ac.at/pdb/query.html?all=y&alb=y&qry=serial
works with Nt apparently
