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

&gt; &gt; &gt; &gt; &gt; &gt; &gt; &gt; <a href="http://www.musicmeetstech.com" target="_blank">www.musicmeetstech.com</a> &lt;<a href="http://www.musicmeetstech.com" target="_blank">http://www.musicmeetstech.com</a>&gt;<br>

&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; ---<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; Dan Wilcox<br>
&gt; &gt; &gt; &gt; &gt; &gt; &gt; <a href="http://robotcowboy.com" target="_blank">robotcowboy.com</a><br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; --<br>
&gt; &gt; &gt; &gt; &gt; &gt; Hugh Sung<br>
&gt; &gt; &gt; &gt; &gt; &gt; <a href="http://www.hughsung.com" target="_blank">www.hughsung.com</a><br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; <a href="http://www.TabletPCMusician.com" target="_blank">www.TabletPCMusician.com</a><br>
&gt; &gt; &gt; &gt; &gt; &gt; <a href="http://www.musicmeetstech.com" target="_blank">www.musicmeetstech.com</a><br>
&gt; &gt; &gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; &gt; &gt; &nbsp;<a href="mailto:PD-list@iem.at">PD-list@iem.at</a> mailing list<br>
&gt; &gt; &gt; &gt; &gt; &gt; &nbsp;UNSUBSCRIBE and account-management -&gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt; <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; &gt; _______________________________________________<br>
&gt; &gt; &gt; &gt; &gt; <a href="mailto:PD-list@iem.at">PD-list@iem.at</a> mailing list<br>
&gt; &gt; &gt; &gt; &gt; UNSUBSCRIBE and account-management -&gt;<br>
&gt; &gt; &gt; &gt; &gt; <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
&gt; &gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt; &gt; --<br>
&gt; &gt; &gt; &gt; Hugh Sung<br>
&gt; &gt; &gt; &gt; <a href="http://www.hughsung.com" target="_blank">www.hughsung.com</a><br>
&gt; &gt; &gt; &gt; <a href="http://www.TabletPCMusician.com" target="_blank">www.TabletPCMusician.com</a><br>
&gt; &gt; &gt; &gt; <a href="http://www.musicmeetstech.com" target="_blank">www.musicmeetstech.com</a><br>
&gt; &gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt; &gt;<br>
&gt; &gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Hugh Sung<br>
&gt; <a href="http://www.hughsung.com" target="_blank">www.hughsung.com</a><br>
&gt; <a href="http://www.TabletPCMusician.com" target="_blank">www.TabletPCMusician.com</a><br>
&gt; <a href="http://www.musicmeetstech.com" target="_blank">www.musicmeetstech.com</a><br>
&gt;<br>
<br>
<br>
</div></div><font color="#888888">--<br>
Use the source<br>
</font><div><div></div><div class="Wj3C7c"><br>
_______________________________________________<br>
<a href="mailto:PD-list@iem.at">PD-list@iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -&gt; <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Hugh Sung<br><a href="http://www.hughsung.com">www.hughsung.com</a><br><a href="http://www.TabletPCMusician.com">www.TabletPCMusician.com</a><br><a href="http://www.musicmeetstech.com">www.musicmeetstech.com</a>