<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
On 07/12/2010 20:10, Kassen wrote:
<blockquote
cite="mid:AANLkTi=2fLEiVYgGcyCN5Mi8TW+3T53D=Ni_W6Hn_=bz@mail.gmail.com"
type="cite">
<div class="gmail_quote">One thing I'd be interested in is using
this to sync Fluxa's "(seq )" to other musicians. For that kind
of thing we might also need something like a timestamp of when
the actual message was received and probably a "latency offset"
that we could set on a per-system basis in .fluxus.scm</div>
</blockquote>
<br>
Interesting. All MIDI messages are time-stamped by RtMidi. The time
stamp is not used by fluxus' MIDI listener, but it's possible. We
have a few problems here:<br>
- what's the meaning of this timestamp?<br>
- is this meaning platform-dependent?<br>
- how can we convert this time stamp to a value that can be compared
to (time)?<br>
<br>
I need to experiment...<br>
<br>
<blockquote
cite="mid:AANLkTi=2fLEiVYgGcyCN5Mi8TW+3T53D=Ni_W6Hn_=bz@mail.gmail.com"
type="cite">
<div class="gmail_quote">
<div> </div>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
0.8ex; border-left: 1px solid rgb(204, 204, 204);
padding-left: 1ex;">
I've also found what I think is a bug in RtMidi :<br>
<br>
<br>
</blockquote>
<div><br>
</div>
<div>Not sure how long ago you send this. In my experience Gary
does reply to such issues but sometimes it takes a bit.</div>
</div>
</blockquote>
11 or 12 days...<br>
<br>
<blockquote
cite="mid:AANLkTi=2fLEiVYgGcyCN5Mi8TW+3T53D=Ni_W6Hn_=bz@mail.gmail.com"
type="cite">
<div class="gmail_quote">
<div>I do find this a bit of a odd error to make by mistake.
Couldn't it be that rtMidi was assuming all messages are three
bytes? I'm asking because I know that ChucK also uses rtMidi
and does that. Sending 1 byte messages is possible there (not
receiving) but you have to use two padding bytes. That might,
of course, be a ChucK issue, not a rtMidi one. I commented on
that several times and proposed some possible solutions but
didn't get a clear reply.</div>
<div><br>
</div>
</div>
</blockquote>
This may be a copy-paste error from another part of the code:<br>
<br>
else if ( status < 0xF3 ) {<br>
if ( status == 0xF1 && (data->ignoreFlags &
0x02) ) {<br>
// A MIDI time code message and we're ignoring it.<br>
size = 0;<br>
iByte += 3;<br>
}<br>
else size = 3;<br>
}<br>
<br>
And not all messages are 3-byte-long:<br>
<br>
if ( status < 0xC0 ) size = 3;<br>
else if ( status < 0xE0 ) size = 2;<br>
else if ( status < 0xF0 ) size = 3;<br>
else if ( status == 0xF0 ) {<br>
<br>
Mysterious.<br>
<br>
<blockquote
cite="mid:AANLkTi=2fLEiVYgGcyCN5Mi8TW+3T53D=Ni_W6Hn_=bz@mail.gmail.com"
type="cite">
<div class="gmail_quote">
<div>At any rate; good job!</div>
<br>
</div>
</blockquote>
<br>
Thanks!<br>
<br>
-- <br>
G.<br>
<br>
</body>
</html>