[PD] Newbie request

Dan Wilcox danomatika at gmail.com
Wed May 7 23:11:56 CEST 2008


Dude I sent you this info already ... its called pywinauto, a Python
automation suite for controlling Windows apps.  You can send key and
mouse events such as opening a file dialog, "typing in the filename",
and hitting enter.  There are plenty of straightforward info in the
documentation.

I paired that with the aforementioned ixi software's simpleOSC library.
There are examples around.

Once again. if you want a specific example, download the zip on this
page of my website where I use PD to send and receive control signals to
Python/pywinauto over OSC to control FLStudio.

I know you a "newb" and all, but that dosen't mean you can't get your
hands dirty and learn a bit.  When I first put that all together I did
not understand OSC and had never used Python or automation software
before.

On Tue, 2008-05-06 at 22:54 -0400, Hugh Sung wrote:

> We're having a neat discussion about this in the Pure Data forum now:
> http://puredata.hurleur.com/sujet-1686-fiddle-piano
> 
> jon2211 came up with a neat patch that demonstrates how well fiddle~
> recognizes notes played on a piano within a given range, triggering a
> key text output.  Another poster showed an example of modifying that
> to trigger with envelope/volume changes.  Of course, we're still stuck
> with how to port the key stroke messages to an external application.
> 
> Would someone be willing to write up a python script that can
> intercept Pure Data text echoes and forward them to other concurrently
> running applications, like PowerPoint or Word?  This is the missing
> link in the puzzle - heck, i'd even be willing to pay someone if they
> could come up with a useful workaround!
> 
> Keeping my fingers crossed...
> Many thanks as always!
> 
> 
> On Wed, Apr 30, 2008 at 6:11 AM, Olivier Heinry <olivier at heinry.fr>
> wrote:
> 
>         Le Tue, 29 Apr 2008 18:50:33 -0400,
>         "Hugh Sung" <hughsung at gmail.com> a écrit :
>         
>         Python might bring you the right solution:
>         
>         http://www.rutherfurd.net/python/sendkeys/
>         
>         You can either send your letters/keystrokes from inside pd
>         using the pyext external that loads your python script
>         
>         or send messages via OSC to a python script that implements
>         the ixi software simpleOSC lib
>         
>         http://www.ixi-software.net/content/backyard.html
>         
>         ++
>         O.
>         
>         
>         
>         
>         > Here's one scenario i'd like to see:
>         >
>         > 1.  Pedal assigned [PgDn] keystroke within Liquid Media,
>         which triggers
>         > scene change
>         > 2.  PD outputs letters A-Z, depending on either volume or
>         pitch frequency
>         > ranges input from audio source (microphone into acoustic
>         piano)
>         > 3.  A given scene within Liquid Media would then interpret
>         the PD-generated
>         > keystrokes and trigger image events based on letter key
>         "depressed" by PD.
>         >
>         > You'd have the ease of image generation (a la Powerpoint)
>         with the speed and
>         > power of PD to map the sound of acoustic music.  Just my
>         newbie imagination
>         > going here.
>         >
>         > On Tue, Apr 29, 2008 at 6:46 PM, Hugh Sung
>         <hughsung at gmail.com> wrote:
>         >
>         > > The pedals basically operate as programmable usb keyboard
>         extensions,
>         > > where you can custom assign any keystroke to any pedal (up
>         to 12).  I'm
>         > > hoping that by assigning a certain set of keys to the
>         pedals and reserving
>         > > the rest for PD to control that everything can simply work
>         together, if PD
>         > > can output keyboard letters/numbers.  Everything would run
>         from the same
>         > > computer.  Again, please forgive me if i sound completely
>         ignorant regarding
>         > > what's possible with PD...
>         > > Many thanks again!
>         > >
>         > >
>         > > On Tue, Apr 29, 2008 at 6:13 PM, Andrew Turley
>         <aturley at acm.org> wrote:
>         > >
>         > > > The [fiddle~] and [bonk~] objects should let you capture
>         all of the
>         > > > information that you are looking for. As far as getting
>         that
>         > > > information from Pd to Liquid Media, that may be the
>         tricky part. Your
>         > > > current pedals are sending keystrokes straight to Liquid
>         Media. Do you
>         > > > know if there is a way to control Liquid Media via MIDI
>         messages, or
>         > > > some sort of message sent via a socket connection (maybe
>         OSC)? If so,
>         > > > then you might be able to use Pd to capture your pedal
>         input and then
>         > > > combine that with the information from [fiddle~] and/or
>         [bonk~] to
>         > > > send the appropriate information to Liquid Media. If the
>         only way to
>         > > > control Liquid Media is through keystrokes, then you
>         might need to
>         > > > write some software that intercepts the keystrokes from
>         the pedals and
>         > > > changes them depending on what is going on in Pd.
>         > > >
>         > > > andy
>         > > >
>         > > > On Tue, Apr 29, 2008 at 12:18 PM, Hugh Sung
>         <hughsung at gmail.com> wrote:
>         > > > > I'm using a presentation program called "Liquid
>         Media", sort of like
>         > > > > Powerpoint on steroids.  Up to this point i had been
>         using multiple
>         > > > foot
>         > > > > pedals assigned to different keystrokes to trigger
>         visual cues, like
>         > > > video
>         > > > > clips, animated GIFs and the like, during live
>         classical music piano
>         > > > > recitals.
>         > > > >
>         > > > > I'd like to incorporate the dynamic capabilities of
>         realtime visual
>         > > > sync,
>         > > > > with the ability to easily "change the scene", as it
>         were.  i'm hoping
>         > > > that
>         > > > > someone can help me come up with a combined solution
>         where PD acts as
>         > > > an
>         > > > > audio trigger controller, triggering keystroke events
>         based on pitch
>         > > > ranges,
>         > > > > dynamic peaks and rhythmic events, and Liquid Media
>         accepts those
>         > > > > PD-generated keystrokes to trigger correlating visual
>         cues.  Each
>         > > > scene
>         > > > > would comprise of specific trigger-able events, and
>         the foot switch
>         > > > would
>         > > > > allow for a manual "change of scene".  i'm hoping to
>         accomplish two
>         > > > things
>         > > > > with this combined approach:
>         > > > >
>         > > > > 1.  make it a little easier to incorporate visuals
>         synced to audio
>         > > > events
>         > > > > 2.  allow for easy scene transitions, to better
>         compliment the
>         > > > "narrative"
>         > > > > structure of classical compositions
>         > > > >
>         > > > > Hope this makes sense...thanks all for your input so
>         far! (and
>         > > > patience!)
>         > > > >
>         > > > >
>         > > > >
>         > > > > On Tue, Apr 29, 2008 at 2:45 PM, Dan Wilcox
>         <danomatika at gmail.com>
>         > > > wrote:
>         > > > > >
>         > > > > > As for forwarding keypresses and mouse events to an
>         application ...
>         > > > > >
>         > > > > > I have done this in Windows to control FLStudio (aka
>         FruityLoops) by
>         > > > > sending menu events and keypresses through python
>         windows scripting,
>         > > > > pywinauto, and osc in python.
>         > > > > >
>         > > > > > I have info and code on my website.  It should still
>         work but it's a
>         > > > bit
>         > > > > old (2006) and I don't use Windows anymore.
>         > > > > >
>         > > > > >
>         > > > > >
>         > > > > >
>         > > > > > On Tue, 2008-04-29 at 13:05 -0400, marius schebella
>         wrote:
>         > > > > > fiddle~ comes with pd (look in the "extra" folder),
>         there is a help
>         > > > > > patch that will explain how it works.
>         > > > > > hope this helps.
>         > > > > > marius.
>         > > > > >
>         > > > > > Hugh Sung wrote:
>         > > > > > > i'm not familiar with that program - can you
>         provide a link to
>         > > > fiddle~,
>         > > > > > > or any other program that can easily do what i'm
>         looking for with
>         > > > all
>         > > > > > > the various parameters?
>         > > > > > >
>         > > > > > > Many thanks!
>         > > > > > >
>         > > > > > > On Tue, Apr 29, 2008 at 12:50 PM, marius schebella
>         > > > > > > <marius.schebella at gmail.com
>         <mailto:marius.schebella at gmail.com>>
>         > > > wrote:
>         > > > > > >
>         > > > > > > Hugh Sung wrote:
>         > > > > > >
>         > > > > > > Actually, this isn't for speech recognition - i'm
>         trying to come
>         > > > > > > up with a simple way to use key triggers to
>         activate visuals.
>         > > > > > >
>         > > > > > > For example: if the piano plays A440, i'm
>         presuming PD can be
>         > > > > > > configured to recognize that pitch with a
>         microphone input and
>         > > > > > > then echo out a text string - the letter "A",
>         perhaps.
>         > > > > > >
>         > > > > > >
>         > > > > > > in that case, you best use fiddle~. what's the
>         other program? does
>         > > > > > > it accept network communication? then you can send
>         the letters
>         > > > over
>         > > > > > > tcp or udp connection (netsend).
>         > > > > > > marius.
>         > > > > > >
>         > > > > > >
>         > > > > > >
>         > > > > > >
>         > > > > > > --
>         > > > > > > Hugh Sung
>         > > > > > > www.hughsung.com <http://www.hughsung.com>
>         > > > > > > www.TabletPCMusician.com
>         <http://www.TabletPCMusician.com>
>         > > > > > > www.musicmeetstech.com
>         <http://www.musicmeetstech.com>
>         > > > > >
>         > > > > >
>         > > > > >
>         > > > > >
>         > > > > >
>         > > > > > ---
>         > > > > > Dan Wilcox
>         > > > > > robotcowboy.com
>         > > > >
>         > > > >
>         > > > >
>         > > > > --
>         > > > > Hugh Sung
>         > > > > www.hughsung.com
>         > > > >
>         > > > > www.TabletPCMusician.com
>         > > > > www.musicmeetstech.com
>         > > > > _______________________________________________
>         > > > >  PD-list at iem.at mailing list
>         > > > >  UNSUBSCRIBE and account-management ->
>         > > > > http://lists.puredata.info/listinfo/pd-list
>         > > > >
>         > > > >
>         > > >
>         > > > _______________________________________________
>         > > > PD-list at iem.at mailing list
>         > > > UNSUBSCRIBE and account-management ->
>         > > > http://lists.puredata.info/listinfo/pd-list
>         > > >
>         > >
>         > >
>         > >
>         > > --
>         > > Hugh Sung
>         > > www.hughsung.com
>         > > www.TabletPCMusician.com
>         > > www.musicmeetstech.com
>         > >
>         >
>         >
>         >
>         
> 
> 
> 
> 
> -- 
> Hugh Sung
> www.hughsung.com
> www.TabletPCMusician.com
> www.musicmeetstech.com

---
Dan Wilcox
robotcowboy.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20080507/7c9cee78/attachment.htm>


More information about the Pd-list mailing list