Hi Ivica,
On the website there's a number of applications for Linux with sourcecode,
mostly in C/C++. The code examples are released under GPL and other free
licenses. The documentation covers the protocol reasonably well and I'm in the
middle of updating it now. The Windows app will have it's sourcecode available
in a few day's (it was only written early this week so we are cleaning the code
of all the *really* hacked up bits).
If your MIDI apps are ALSA 0.9 compatable then you can aconnect them to dmidid
for transmission, reception at the moment passes straight to the MIDI device but
this just needs to be implemented the ALSA way (it's half done in the latest
version of dmidid). Adding a native DMIDI interface to an existing app can be
fairly easy. Have a look at the DMIDI'fied SpiralSynth as an example. You can
have a number of DMIDI clients on a single machine, or have them distributed
over several machines.
All data transmission is done using UDP so yes, it uses TCP/IP. On a private
LAN latencies and packet loss should not be a problem. On my LAN at home I've
not had a dropped packet and at work with a very saturated 10mbit segment we've
only had problems when we start scp'ing Debian ISO's around the lab at the same
time. DMIDI isn't meant for use over the Internet though.
Cheers
Phil
Quoting Ivica Bukvic <ico(a)fuse.net>et>:
Thanks for a quick reply. One more question:
1) Is there good documentation to be found, or even better, source code?
2) Can I use DMIDI in combination with TCP/IP (I saw you mentioned UDP
on your site)?
3) Does application have to be DMIDI-aware in order to be able to
send/receive MIDI via DMIDI server or does DMIDI server simply act
transparently between sender and receiver (if they are presumably on the
same machine)?
Again, thanks for your help! Sincerely,
Ivica Ico Bukvic
-----Original Message-----
From: Phil Kerr [mailto:philkerr@elec.gla.ac.uk]
Sent: Thursday, October 10, 2002 9:49 PM
To: Ivica Bukvic
Subject: Re: [linux-audio-dev] Needing advice on implementing MIDI in
my
app (RTMix)
Hi Ivica,
DMIDI may be of some use to you. You can have one DMIDI server and
your
MIDI
applications can broadcast DMIDI data. You use the server to isolate
you
from
hardware and MIDI API's
http://www.dmidi.org
Cheers
Phil
--
Phil Kerr Centre for Music Technology
Researcher Glasgow University
philkerr(a)elec.gla.ac.uk T (+44) 141 330 5740
Without music, life would be a mistake. Friedrich Nietzsche