<div dir="ltr"><div>I was thinking, it could be nice to have a desktop version of PD that is restricted to only have the objects that WebPD has, so you can build up your patches and be pretty sure they'll work.<br><br></div>-Alex<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, May 5, 2015 at 12:50 AM, s p <span dir="ltr"><<a href="mailto:sebpiq@gmail.com" target="_blank">sebpiq@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>@Billy : sequencing your audio using JavaScript timers is the wrong approach. Web Audio provides an API that allows exact scheduling of the sound. Then you can use it also to fire callbacks which will allow you to update your graphics. These callbacks will be fired at slightly inexact times compared to audio, but they will globally stay in sync with audio sometimes slightly before, sometimes slightly after. Here is an example from a small library for scheduling things in Web Audio I have written : <a href="http://sebpiq.github.io/WAAClock/demos/beatSequence.html" target="_blank">http://sebpiq.github.io/WAAClock/demos/beatSequence.html</a> So what you are talking about is not really a problem.<br><br></div>About WebPd, the scheduling and metro are not so great at the moment, but when I'll have optimized it, you will be able to drive graphics and GUI changes from a metro or any [send bla] object like this : "Pd.receive('bla', updateUI)"<br></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On Tue, May 5, 2015 at 9:40 AM, Billy Stiltner <span dir="ltr"><<a href="mailto:billy.stiltner@gmail.com" target="_blank">billy.stiltner@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5"><div dir="ltr"><div><div><div><div><div><div>nice dream Chris. .<br></div>What about ofx pd for droid?<br></div>cant you run vanilla pd on an android?<br></div><div>The thing about browser based stuff is syncing the graphics with the dsp.<br></div><div>I have been making  dhtml scale, mode, keyboard , and sequencer interfaces for xensynth. I use java sockets as a tcp/udp transport.<br></div><div>would be really nice to have a websockets server added to pdsend/recieve and netsend/recieve.<br></div><div>this would be awesome for libpd as well.<br></div><div>Anyways with the browser based sequencer things get out of timing real quick using standard javascript timing. the resolution of the javascript timers is not good enough.<br></div><div>hopefully soon I can skip using the javascript  as the sequencer sending note messages to pd. and just have the sequencer modeled in pd as a dynamic symbol or something. That way the browser can do the nifty editing graphics for coloring a xenharmonic piano roll. as you add or move notes, the corosponding grid in pd is edited. if you play the sequencer then the play position cursor is all that needs to be updated on the web interface. just reset it ever loop if it gets out of sync, no problem.<br></div><div>There is some new features of CSS/HTML/javaScript that make dynamic properties of elements really easy to code.<br></div><div><a href="https://archive.org/details/Xensynth10.01" target="_blank">https://archive.org/details/Xensynth10.01</a><br></div><div>most recent version<br></div><div><a href="https://archive.org/download/Xensynth10.01/xensynth10.14.5BrooklynMooreEdition.zip" target="_blank">https://archive.org/download/Xensynth10.01/xensynth10.14.5BrooklynMooreEdition.zip</a><br></div><div>interface is xensynth/polysynth/RUNME2showhidemidi.pd<br> and browser tuning plus mode control is:<br></div><div> xensynth/burningship/pdapplet/javaSocketBridge/xensynthcontrol.html<br></div><div>check out the sequencer section of the browser controls. it is not finished, just started actually and has no stop button, hehe.<br></div><div>particularly this little snippet of code <br></div><div>might be helpful in developing pd controls<br></div><div>seqbuffer=seqbuffer + "<div id='" + j.toString() + "-" + i.toString() + 
<br>                "' class='seqelement' data-x= '" + j.toString() + 
<br>                "' data-y= '" + i.toString() + "'"  + 
<br>                " data-rsx= '" + rsx + "'></div>";<br></div><div><a href="http://html5doctor.com/html5-custom-data-attributes/" target="_blank">http://html5doctor.com/html5-custom-data-attributes/</a><br></div></div></div></div><span><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 4, 2015 at 8:37 AM, Chris McCormick <span dir="ltr"><<a href="mailto:chris@mccormick.cx" target="_blank">chris@mccormick.cx</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">LOL!<br>
<span><br>
On 04/05/15 20:20, s p wrote:<br>
> My dream too :)</span><br></blockquote></div><br></div></span></div>
<br></div></div><span class="">_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at" target="_blank">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
<br></span></blockquote></div><br><br clear="all"><br>-- <br><span class=""><div><div dir="ltr"><span style="color:rgb(153,153,153)"><b><span style="color:rgb(68,68,68)">S</span><span><span style="color:rgb(68,68,68)">ébastien Piquemal</span><br></span></b></span><div><span style="color:rgb(153,153,153)"><b><br></b></span><span style="color:rgb(102,102,102)"><b> </b><span style="color:rgb(204,204,204)">-----</span><b> <font size="1">@sebpiq</font></b></span><br></div><div><span style="color:rgb(102,102,102)"><span style="color:rgb(204,204,204)"> -----</span><b> </b><font size="1"><a href="http://github.com/sebpiq" target="_blank">http://github.com/sebpiq</a></font><b><br></b></span></div><span style="color:rgb(102,102,102)"> <span style="color:rgb(204,204,204)">-----</span> <font size="1"><a href="http://funktion.fm" target="_blank">http://funktion.fm</a></font></span><br></div></div>
</span></div>
<br>_______________________________________________<br>
<a href="mailto:Pd-list@lists.iem.at">Pd-list@lists.iem.at</a> mailing list<br>
UNSUBSCRIBE and account-management -> <a href="http://lists.puredata.info/listinfo/pd-list" target="_blank">http://lists.puredata.info/listinfo/pd-list</a><br>
<br></blockquote></div><br></div>