<div dir="auto">Greetings<div dir="auto"><br></div><div dir="auto">Why not send each track instrument a separate midi channel on a single port. Question is will Cubase do that. It used to only allow one midi channel at a time when recording. Certainly that is no longer the case? </div></div><div class="gmail_extra"><br><div class="gmail_quote">On Dec 8, 2016 18:28, &quot;Gonzalo&quot; &lt;<a href="mailto:gonzalo@dense13.com">gonzalo@dense13.com</a>&gt; wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I found this:<br>
<br>
&quot;...the MIDI specification has different parts. One part describes MIDI &quot;wire&quot; protocol (messages sent between devices in real time), and another part describes Standard MIDI Files (messages stored as events in &quot;sequences&quot;). In the latter part of the specification, each event stored in a standard MIDI file is tagged with a timing value that indicates when that event should be played. By contrast, messages in MIDI wire protocol are always supposed to be processed immediately, as soon as they&#39;re received by a device, so they have no accompanying timing values&quot;.<br>
<br>
(<a href="https://docs.oracle.com/javase/tutorial/sound/MIDI-messages.html" rel="noreferrer" target="_blank">https://docs.oracle.com/javas<wbr>e/tutorial/sound/MIDI-messages<wbr>.html</a>)<br>
<br>
Might suggest there&#39;s no problem with the MidiMsg. Maybe it&#39;s a Cubase issue? Someone suggested it&#39;s a Midi TimeCode issue, but I know nothing about that. I&#39;ll keep looking, but if anybody has any more info that&#39;ll be very welcome.<br>
<br>
Gonzalo<br>
<br>
<br>
<br>
On 09/12/16 00:11, Gonzalo wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thanks Michael,<br>
<br>
This might be a bit over my head, but I&#39;ll look into it. Never checked<br>
Chuck&#39;s source code before, at the very least it&#39;ll be fun. :)<br>
<br>
Gonzalo<br>
<br>
<br>
On 08/12/16 23:28, Michael Heuer wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Thu, Dec 8, 2016 at 3:52 PM, Gonzalo &lt;<a href="mailto:gonzalo@dense13.com" target="_blank">gonzalo@dense13.com</a><br>
&lt;mailto:<a href="mailto:gonzalo@dense13.com" target="_blank">gonzalo@dense13.com</a>&gt;&gt; wrote:<br>
<br>
    Hi,<br>
<br>
    I&#39;m using Bruce Murphy&#39;s MIDIsender class<br>
    (<a href="http://www.rattus.net/~packrat/audio/ChucK/files/midisender.ck" rel="noreferrer" target="_blank">http://www.rattus.net/~packra<wbr>t/audio/ChucK/files/midisender<wbr>.ck</a><br>
    &lt;<a href="http://www.rattus.net/%7Epackrat/audio/ChucK/files/midisender.ck" rel="noreferrer" target="_blank">http://www.rattus.net/%7Epack<wbr>rat/audio/ChucK/files/midisend<wbr>er.ck</a>&gt;)<br>
    to generate MIDI from my Chuck code. I&#39;m sending this MIDI to<br>
    various virtual MIDI ports (using OSX&#39;s IAC Driver). Then I have<br>
    various software instruments in Cubase, each one listening to one of<br>
    the virtual ports. Works well when I run my Chuck program, but if in<br>
    Cubase I arm the tracks and try to record the incoming MIDI, all the<br>
    events get &#39;collapsed&#39; at the same time, specifically the moment I<br>
    click record. They do get recorded, but all starting at the same<br>
time.<br>
<br>
    This only happens if I want to record them, if I&#39;m only playing,<br>
    timing is fine.<br>
<br>
    Using MidiMonitor I see that the time for all the MIDI events<br>
    generated from Chuck is 0, that seems to be the issue. Any thoughts<br>
    on how I can change that?<br>
<br>
<br>
MidiMsg is defined as a four byte record<br>
<br>
<a href="https://github.com/ccrma/chuck/blob/master/src/midiio_rtmidi.h#L65" rel="noreferrer" target="_blank">https://github.com/ccrma/chuck<wbr>/blob/master/src/midiio_rtmidi<wbr>.h#L65</a><br>
<br>
but ChucK only sets three bytes on send<br>
<br>
<a href="https://github.com/ccrma/chuck/blob/master/src/midiio_rtmidi.cpp#L120" rel="noreferrer" target="_blank">https://github.com/ccrma/chuck<wbr>/blob/master/src/midiio_rtmidi<wbr>.cpp#L120</a><br>
<br>
<a href="http://midisender.ck" rel="noreferrer" target="_blank">midisender.ck</a> &lt;<a href="http://midisender.ck" rel="noreferrer" target="_blank">http://midisender.ck</a>&gt; does the same.  Is the unset byte<br>
supposed to be the time?  Suppose I should go read the spec.<br>
<br>
It appears time is written and read from files separately<br>
<br>
<a href="https://github.com/ccrma/chuck/blob/master/src/midiio_rtmidi.cpp#L823" rel="noreferrer" target="_blank">https://github.com/ccrma/chuck<wbr>/blob/master/src/midiio_rtmidi<wbr>.cpp#L823</a><br>
<a href="https://github.com/ccrma/chuck/blob/master/src/midiio_rtmidi.cpp#L837" rel="noreferrer" target="_blank">https://github.com/ccrma/chuck<wbr>/blob/master/src/midiio_rtmidi<wbr>.cpp#L837</a><br>
<br>
Not sure that helps,<br>
<br>
   michael<br>
<br>
<br>
______________________________<wbr>_________________<br>
chuck-users mailing list<br>
<a href="mailto:chuck-users@lists.cs.princeton.edu" target="_blank">chuck-users@lists.cs.princeton<wbr>.edu</a><br>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" rel="noreferrer" target="_blank">https://lists.cs.princeton.edu<wbr>/mailman/listinfo/chuck-users</a><br>
<br>
</blockquote>
<br>
</blockquote>
<br>
-- <br>
<a href="http://dense13.com" rel="noreferrer" target="_blank">http://dense13.com</a><br>
<a href="http://www.whole-play.com" rel="noreferrer" target="_blank">http://www.whole-play.com</a><br>
<a href="https://www.30daygroove.com" rel="noreferrer" target="_blank">https://www.30daygroove.com</a><br>
______________________________<wbr>_________________<br>
chuck-users mailing list<br>
<a href="mailto:chuck-users@lists.cs.princeton.edu" target="_blank">chuck-users@lists.cs.princeton<wbr>.edu</a><br>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" rel="noreferrer" target="_blank">https://lists.cs.princeton.edu<wbr>/mailman/listinfo/chuck-users</a><br>
</blockquote></div></div>