Hi Matt,

  The way to use MIDI in ChimeraX would be to include a MIDI / Qt5 library.  Qt5 is the window toolkit used by ChimeraX and it controls the receiving of events from devices.  I don’t know of an adequate Qt / MIDI library exists.  Really we would want PyQt5 / MIDI since all Qt in ChimeraX is done in Python.  The top Qt / MIDI hit is the QMidi library

https://github.com/waddlesplash/QMidi

which apparently only handles output of MIDI events, and it sounds like you are primarily interested in input of MIDI events to ChimeraX.

  We welcome any recommendations on what PyQt library could handle incoming MIDI events.  My quick web search turned up nothing.

Tom



On Nov 18, 2016, at 9:47 AM, Dougherty, Matthew T wrote:

Many of the USB devices I have been looking at for control surfaces are midi-centric, primarily coming out of the music industry.

For simple devices, not going the midi-route is usually straight forward, although can get complex supporting cross-platform. 

For complex devices such as DS1, midi appears to be the best method for dial boxes.  There is also economical advantages and an ongoing evolution of such devices.

 It also allows one to take advantage of manufacturer software in configuring baseline operational conditions (setting dial colors, ranges, toggling action of buttons).


We have talked about midi in the event loop before.  At the time it was not clear how/if this could work under chimeraX.

Any further ideas?




Matthew Dougherty
National Center for Macromolecular Imaging
Baylor College of Medicine
=================================================
=================================================
_______________________________________________
Chimera-dev mailing list
Chimera-dev@cgl.ucsf.edu
http://plato.cgl.ucsf.edu/mailman/listinfo/chimera-dev