[wdmaudiodev] Re: USB midi driver?

  • From: "Bert Schiettecatte" <bert@xxxxxxxxxxxx>
  • To: <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Wed, 24 Nov 2004 00:47:28 +0100

Hi,
 
Actually, it does.  Every system exclusive message has a manufacturer's
identification code.  An app that knew it was getting multiple devices
on separate MIDI controllers could distinguish them by using that.
 
That won't work. There is no way you can tell the difference between two
control messages being sent. You can't tell from which device the
message is sent because they look identical, apart from the control
value. System exclusive is only used to transfer device configuration
settings, etc. Of course you can use sysex to send a unique serial
number, but that's really a dirty hack. I would rather have Win XP
assign unique names to both devices, e.g. :
 
midi devices
|- midi controller #1
|- midi controller #2 


The question in my mind is this:  what do you mean by "distinguish"
them?  Windows will certainly let you plug in two identical devices, it
will load drivers for the two devices, and it will expose interfaces for
both devices.  An application that enumerates all the MIDI devices will
find two of them, with different device IDs.  If the app KNOWS there
will be two different devices, it can open one instance to each.
 
I am not sure Win XP will allow you to connect 2 identical devices or it
will support 2 of these devices at the same time. Even if it allows you
to do that, it will assign identical names (and different IDs like you
said) to the devices. Which might confuse MIDI software that was not
properly designed and uses names to distinguish between devices. 
 

How would you EXPECT to be able to distinguish them?  Describe for me a
use case in which this is important, and how you visualize things
working.
 
suppose somebody buys two identical midi devices. he arrives home, knows
what he is doing, installs the drivers first, then plugs in both
devices. suppose he is lucky and Win XP shows 2 new midi devices with
identical names in the hardware list (control panel/system). 
next he starts his favorite MIDI application which lists 2 identical
midi devices. no way to tell which physical device corresponds to which
name in the combo box! now, there is no way for the user to know where
he is sending his controller messages each time he has to select the
device in some combo list (and this happens many times in pro audio
applications). so he has to use trial and error each time he needs to
select the right device from some list, to find the device he actually
wants to send data to. now, imagine he buys 4 of these identical
devices, can you imagine how cumbersome this becomes? 
 
bert

Other related posts: