[chuck-users] Chuck's capture of Midi broken?

Daniel Chapiro dchapiro at gmail.com
Fri Sep 12 20:43:33 EDT 2014

Hi - I think that Chuck's Midi methods seem not to be working (except for very simple examples), as Chuck is dropping Midi events - I'm using the pre-compiled version of Chuck 1.3.0 (gidora), on a Mac Mini (2.7GHz I7), with OSX 10.7.5 (Lion).

The only type of ON/OFF sequence in which Chuck seems not to "swallow" any notes is of the form Note1 ON, Note1 OFF, Note2 ON, Note2 OFF…  Instead, I'm generating Midi streams in which there are new note On events before the prior note goes off. They happen when I play legato with a Yamaha WX5 wind controller, but any Midi keyboard would also generate such sequences if one presses a new key before releasing another one that is already sounding.

I captured the following short sequence with the "MIDI Monitor" app (http://www.snoize.com/MIDIMonitor/). Also it sounds fine with different sound generators):

20:34:33.026	From In	Note On	1	E2	22
20:34:33.030	From In	Control	1	Breath Control (coarse)	20
20:34:33.036	From In	Control	1	Breath Control (coarse)	25
20:34:33.041	From In	Control	1	Breath Control (coarse)	27
20:34:33.071	From In	Control	1	Breath Control (coarse)	29
20:34:33.182	From In	Control	1	Breath Control (coarse)	30
20:34:33.207	From In	Note On	1	F2	30
20:34:33.208	From In	Note Off	1	E2	0
20:34:33.534	From In	Note On	1	G2	30
20:34:33.535	From In	Note Off	1	F2	0
20:34:33.664	From In	Control	1	Breath Control (coarse)	32
20:34:33.845	From In	Note On	1	A2	32
20:34:33.846	From In	Note Off	1	G2	0

Capturing the same with Chuck only shows the 1st Note ON (and all the CCs, which are correct), but the rest of the Note ONs/OFFs vanish (BTW, playing very slowly makes no difference). To make sure it was not some bug in my code, I captured the Midi using just Chuck's example in miniAudicle->File->Open Example->MIDI->gomidi (the numeric output is converted below, just for readability): 

Note On	E2	22
CC 	BC (msb)	20
CC	BC (msb)	25
CC	BC (msb)	27
CC	BC (msb)	29
CC	BC (msb)	30
CC	BC (msb)	32

Only by fully ending each note before playing the succeeding one, all the Note ONs/OFFs show up. But that's not useable...

Any help on incantations for Chuck, workarounds, or a fix would be great! (particularly since after learning to ChucK from Rob Poor's Oxygen8, the rest of my ChucK code seems to be working nicely :-)


More information about the chuck-users mailing list