<div dir="ltr"><div>I'm quite happy! -- <br><br>and given how much blundering & hassle an inexperienced user can enjoy in the installation process --<br><br></div>Would my compiled binary be useful on sourceforge -- What's the proper way to check that possibility out?<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Feb 20, 2016 at 5:37 AM, Taube, Heinrich K <span dir="ltr"><<a href="mailto:taube@illinois.edu" target="_blank">taube@illinois.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">if you are in 3.9.0 and its working as you expect im happy!<br>
<div class="HOEnZb"><div class="h5"><br>
> On Feb 19, 2016, at 10:46 PM, Forrest Curo <<a href="mailto:treegestalt@gmail.com">treegestalt@gmail.com</a>> wrote:<br>
><br>
> Given that the error isn't from the current distribution, I suppose there's no issue...<br>
><br>
> Ah, I seem to have finally bumbled through installing 3.9.0, thanks!<br>
><br>
> On Fri, Feb 19, 2016 at 2:19 PM, Forrest Curo <<a href="mailto:treegestalt@gmail.com">treegestalt@gmail.com</a>> wrote:<br>
> function mychord (data)<br>
> with channel = second(data),<br>
> keynum = third(data),<br>
> velocity = fourth(data)<br>
> send("mp:midi", key: key, vel: vel, chan: chan)<br>
> send("mp:midi", key: key + pick(3,4), vel: vel, chan: chan)<br>
> send("mp:midi", key: key + 7, vel: vel, chan: chan)<br>
> end<br>
> -------------<br>
> response: 'mychord'<br>
> -------------<br>
> send("mp:receive", mm:on, mychord)<br>
> ------------------<br>
> response: '#t'<br>
> -------------------<br>
> [play note]<br>
> ------------------<br>
> response:<br>
> >>> Error: :vel not a valid keyword argument in<br>
> (:key key :vel vel :chan chan)<br>
> ------------------------------------<br>
><br>
> That is, it doesn't work in that example because it needs a variable 'velocity' rather than 'vel'. (?)<br>
><br>
> If I fix that and likewise put the variable 'channel' in place of 'chan', 'keynum' rather than 'key' -- then it works.<br>
><br>
> Since I'm working with an ubuntu binary of 3.8.0 I might not be using the latest examples available(?) [I couldn't install a more recent Grace because my system seems to be allergic to cmake > cmake4.3 --<br>
> (perhaps for similar 32-bit --> 64-bit issues?)<br>
> -------------<br>
> If I get rid of the 'send's in the mp.midi lines<br>
> the error instead is:<br>
> >>> Error: vel: unbound variable<br>
> and changing everything as before yields:<br>
><br>
> >>> Error: mp:midi: unknown key: (:vel 91 :chan 0)<br>
> in (:key 59 :vel 91 :chan 0)<br>
><br>
> The 'send' and the 'mp:midi' ought to be equivalent; but it's working with the 'send' version, while I don't see why:<br>
> mp:midi(key: keynum, vel: velocity, chan: channel)<br>
> is not.<br>
> (?)<br>
><br>
><br>
><br>
><br>
> On Fri, Feb 19, 2016 at 10:43 AM, Taube, Heinrich K <<a href="mailto:taube@illinois.edu">taube@illinois.edu</a>> wrote:<br>
> its not clear to me what the issue is. does it not work.<br>
> BTW no need to use send() and just call the function directly so<br>
><br>
> > send("mp:midi", key: key, vel: vel, chan: chan)<br>
><br>
> can be written<br>
><br>
> mp:midi(key: key, vel: vel, chan: chan)<br>
><br>
> i thought I got rid of all that in the documentation and help files.<br>
><br>
><br>
> > On Feb 19, 2016, at 10:04 AM, Forrest Curo <<a href="mailto:treegestalt@gmail.com">treegestalt@gmail.com</a>> wrote:<br>
> ><br>
> > The section is "Input Hooks" (speaking of errors... but still not the first title I'd look for this under.)<br>
> ><br>
> > On Fri, Feb 19, 2016 at 7:59 AM, Forrest Curo <<a href="mailto:treegestalt@gmail.com">treegestalt@gmail.com</a>> wrote:<br>
> > Okay, among 'examples' there is a section titled 'Output Hooks' (not, to my mind, the most obvious titles to look for)<br>
> > and the examples have errors:<br>
> > ie<br>
> ><br>
> > ; An opcode receiver that plays a major or minor chord whenever a<br>
> > ; Note On arrives<br>
> ><br>
> > function mychord (data)<br>
> > with channel = second(data),<br>
> > keynum = third(data),<br>
> > velocity = fourth(data)<br>
> > send("mp:midi", key: key, vel: vel, chan: chan)<br>
> > send("mp:midi", key: key + pick(3,4), vel: vel, chan: chan)<br>
> > send("mp:midi", key: key + 7, vel: vel, chan: chan)<br>
> > end<br>
> ><br>
> > ;; assign receiver for the mm:on opcode (Note Ons)<br>
> ><br>
> > send("mp:receive", mm:on, mychord)<br>
> ><br>
> > ;; when you are done clear it...<br>
> ><br>
> > send("mp:receive", mm:on, #f)<br>
> > -----------------------------------------------------------<br>
> ><br>
> > It can be fixed, however. This works:<br>
> > -------------------------------------------------------------<br>
> > function mychord (data)<br>
> > with channel = second(data),<br>
> > keynum = third(data),<br>
> > velocity = fourth(data)<br>
> > send("mp:midi", key: keynum, amp: velocity, chan: channel)<br>
> > send("mp:midi", key: keynum + pick(3,4), amp: velocity, chan: channel)<br>
> > send("mp:midi", key: keynum + 7, amp: velocity, chan: channel)<br>
> > end<br>
> ><br>
> > ;; assign receiver for the mm:on opcode (Note Ons)<br>
> ><br>
> > send("mp:receive", mm:on, mychord)<br>
> ><br>
> ><br>
> > On Thu, Feb 18, 2016 at 9:10 PM, Forrest Curo <<a href="mailto:treegestalt@gmail.com">treegestalt@gmail.com</a>> wrote:<br>
> > I see a tutorial on sending midi out<br>
> ><br>
> > and ways to declare a function to be receiving midi in with specific opcodes<br>
> ><br>
> > but I'm not at all clear on how such a function should be written to extract the data when a midi message comes in.<br>
> ><br>
> > Examples anywhere?<br>
> ><br>
> ><br>
> ><br>
> ><br>
> > _______________________________________________<br>
> > Cmdist mailing list<br>
> > <a href="mailto:Cmdist@ccrma.stanford.edu">Cmdist@ccrma.stanford.edu</a><br>
> > <a href="https://cm-mail.stanford.edu/mailman/listinfo/cmdist" rel="noreferrer" target="_blank">https://cm-mail.stanford.edu/mailman/listinfo/cmdist</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> Cmdist mailing list<br>
> <a href="mailto:Cmdist@ccrma.stanford.edu">Cmdist@ccrma.stanford.edu</a><br>
> <a href="https://cm-mail.stanford.edu/mailman/listinfo/cmdist" rel="noreferrer" target="_blank">https://cm-mail.stanford.edu/mailman/listinfo/cmdist</a><br>
<br>
</div></div></blockquote></div><br></div>