[rec.music.synth] MIDI BOF

tjt@cbnewsh.att.com (timothy.j.thompson) (05/10/91)

From article <13016@dog.ee.lbl.gov>, by mccanne@horse.ee.lbl.gov (Steven McCanne):
> We need a generic interface that we can build portable unix midi
> software on top of.  I propose that we try establish such a standard.
> The interfaces I know of are:
> 	- my driver
> 	- the Sun driver
> 	- Tim Thompson's MPU /dev/midi driver
> What do people think?  Should we even bother with a uniform kernel
> interface?  Or, should it be in library routines?  Or, should we all
> use our own interfaces?

This will be a good thing to discuss at the MIDI BOF at USENIX.
Random issues involved:

   - A list of MIDI application types would be useful
     in order to see the range of needs.

   - How is timing done?  Is it an integral part of the MIDI standard data
     stream (ie. tagged data), or done separately (and hence possibly
     optional, or provided in different ways on different systems)?

   - Does the low-level interface manipulate MIDI bytes or messages?
     If it manipulates messages, what does it do with long sysex messages?

   - How do you handle shared access to MIDI I/O?  E.g. Does every process
     see a copy of the MIDI input stream?  Do you want the standard to
     involve routing and filtering?  For example, if done as a streams
     device driver, you could do a lot of things by pushing various
     modules onto the stack.

   - Is the goal to make it easy to port and write high-level software,
     or to make it easy (and possible) to write low-level support for *any*
     type of MIDI interface?  Perhaps only the low-level interface should
     be standardized - upper levels can be provided in libraries,
     and we are unlikely to get them right on the first try.

   - Do you want it to work over a network?

Lots of issues.  My preference would be to start simple and standardize
some (hopefully less controversial) low-level interface, and work up
from there.  I'm sure we'll have some good discussions at the MIDI BOF
about all this.  Hopefully someone there will have experience with
Apple's MIDI Manager, which is one example of how it can be done.
Of course, our goal should be a UNIX-style solution (I hope),
which may or may not be similar.

                            ...Tim Thompson...tjt@blink.att.com...

ereiamjh@jhunix.HCF.JHU.EDU (Tom B. O'Toole) (05/10/91)

Please stop changing the subject line if you're talking about the same
thing, thank you. I'm not interested in it and I'm sick of seeing
the same threads come back after I've killed them, thank you.
-- 
Tom O'Toole - ecf_stbo@jhuvms.bitnet - JHUVMS system programmer 
Homewood Computing Facilities, Johns Hopkins University, Balto. Md. 21218 
ease!Trim!eeeaaaassse!trimtrimtrimeeeeeeaaaaassetrimease!trim!ease!trimeaase

dbell@cup.portal.com (David J Bell) (05/11/91)

>This will be a good thing to discuss at the MIDI BOF at USENIX.
>Random issues involved:

.
.
.


>Lots of issues.  My preference would be to start simple and standardize
>some (hopefully less controversial) low-level interface, and work up
>from there.  I'm sure we'll have some good discussions at the MIDI BOF
>about all this.  Hopefully someone there will have experience with
>Apple's MIDI Manager, which is one example of how it can be done.
>Of course, our goal should be a UNIX-style solution (I hope),
>which may or may not be similar.

>                            ...Tim Thompson...tjt@blink.att.com...

How about:

  --  MIDI on the FX? So far, there is very little commercial support!

Dave     dbell@cup.portal.com

pirk@dev0d.mdcbbs.com (05/13/91)

In article <1991May10.000511.7113@cbnewsh.att.com>, tjt@cbnewsh.att.com (timothy.j.thompson) writes:
> From article <13016@dog.ee.lbl.gov>, by mccanne@horse.ee.lbl.gov (Steven McCanne):
>> We need a generic interface that we can build portable unix midi
>> software on top of.  I propose that we try establish such a standard.
>> The interfaces I know of are:
>> 	- my driver
>> 	- the Sun driver
>> 	- Tim Thompson's MPU /dev/midi driver
>> What do people think?  Should we even bother with a uniform kernel
>> interface?  Or, should it be in library routines?  Or, should we all
>> use our own interfaces?
> 
> This will be a good thing to discuss at the MIDI BOF at USENIX.
  
    Since I, and possibly many others cannot make this conference, it might 
  be a good idea to bounce some ideas around in the conference....

    Also, it seems that I am a bit late to this thread, and have missed the 
  descriptions and merits of the above drivers, so I ask patience if my
  comments are out of line....

>    - A list of MIDI application types would be useful
>      in order to see the range of needs.

    I would think that all applicaton types (I hope this means sequencers, etc) 
  would be included.  I am unclear regarding the use of "interface"....
  Software I/F or Hardware I/F?

>    - Is the goal to make it easy to port and write high-level software,
>      or to make it easy (and possible) to write low-level support for *any*
>      type of MIDI interface?  Perhaps only the low-level interface should
>      be standardized - upper levels can be provided in libraries,
>      and we are unlikely to get them right on the first try.
    
    How about standardizing on a set I/F in the "unix box" and use an external
  MIDI controller card.  This way, any box with the standard I/F (let's say
  a parallel I/F) could be running *any* standard midi application and expect
  to see the same data in the same format.
    
    I use the PC as an example... With an 8 bit parallel I/F on a unix box, 
  you might be able to connect to a 8 bit PC midi card external to the machine,
  and with a read/write /dev/midi_io device driver, talk to the midi card from 
  a PC emulation window on the unix box.  This is only an example to test the
  feasibility of the idea.
> 
> Lots of issues.  My preference would be to start simple and standardize
> some (hopefully less controversial) low-level interface, and work up
> from there.  I'm sure we'll have some good discussions at the MIDI BOF
> about all this.  Hopefully someone there will have experience with
> Apple's MIDI Manager, which is one example of how it can be done.
> Of course, our goal should be a UNIX-style solution (I hope),
> which may or may not be similar.
> 
    I agree that the best idea is to standardize.  My only comment to add is
  that I have found very few systems (even from the same vendor) that have any
  kind of "standard" bus structure (ouch!, I mean a card from vendor A rarely 
  works in a system from vendor B).  This leads me to vote for the external 
  interface and write device drivers utilizing the systems "standard" I/F's.

Steve... :-)
--
 
.Steve Pirk.......midit.....Voice: (714) 952-5516.........................
..McDonnell Douglas M&E..Internet: pirk@dev0d.mdcbbs.com..................
...5701 Katella Ave..........UUCP: uunet!mdcbbs!dev0d.mdcbbs!pirk.........
....Cypress, CA. 90630........PSI: PSI%31060099980019::DEV0D::PIRK........
--------------------------------------------------------------------------
"The opinions expressed herein, are probably not those of MDC, and I'm not
 sure if I can even call them mine......."