MIDI driver for xorg?

Peter Hutterer peter.hutterer at who-t.net
Sun Jan 31 21:39:25 PST 2010


On Mon, Jan 25, 2010 at 11:03:40AM +0100, Crypto wrote:
> I'm new to this list and I would like to know if there is a MIDI driver for 
> the xorg xserver.
> 
> Before you think "my, that's a silly question for a starter..." let me 
> describe why I think that there could actually be very good reasons for that.
> 
> 1.) MIDI interfaces connect to PCs typically via USB or joystick port. The USB 
> connectivity is similar to that standard USB computer keyboards. From that 
> interface-based point of view they do not differ much from ordinary keyboards.
> 
> 2.) MIDI devices transmit data at rather low speed in short commands in a 
> byte-wise "language" which includes not only commands (e.g. NOTE ON/OFF) but 
> also "stream data" for  some musical events. This again is similar to ordinary 
> keyboards.
> 
> 3.) If a GUI of an application was able to understand incoming MIDI events it 
> could be remotely controlled via MIDI interface, aside with mouse and 
> keyboard. This is actually my main reason for writing this  - I have found 
> that there are really few applications out there that have a) a GUI, b) can be 
> fully MIDI controlled. In most cases it would be a question of selecting a 
> menu entry using MIDI commands instead of an F-key or mouse button, so it 
> looks like it could be done by making MIDI commands known to the shortcut 
> tools of applications, thus by implementing a MIDI xorg driver.
> 
> Maybe it is mainly a question of real-time capabilities of the underlying 
> hardware driver it could not be done yet, but maybe there are/have been other 
> good reasons for not having a MIDI xorg-driver?

the balance between amount of work required and the usefulness of such drivers
is a bit tilted :)

you could write a driver that converts MIDI commands into key presses but
that may not get past the point of a proof of concept. You'll likely run
into issues regarding on-the-fly reconfiguration etc.

forwarding MIDI through X to clients doesn't really work, the protocol
doesn't cater for this.

Cheers,
  Peter



More information about the xorg mailing list