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@heinry.fr wrote:
Le Tue, 29 Apr 2008 18:50:33 -0400, "Hugh Sung" <hughsung@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@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@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@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@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@gmail.com <mailto:marius.schebella@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@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 > > > > > > > > > > > -- > > 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