Re: [linux-audio-dev] Midi Mapper???

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] Midi Mapper???
From: John Meacham (john_AT_repetae.net)
Date: Fri Jan 04 2002 - 10:52:41 EET


umm. I am not sure where you are getting your information from but
/dev/midi works just great with USB MIDI devices under linux. I use an
sblive and an Roland UA-100 USB Box (2 midi in/outs + internal midi
synth + raw audio) I regularly do midi-mapper like things using such
advanced tools as 'cat'
cat /dev/midi00 > /dev/midi01 will hook my keyboard to my QSR.
I in fact have not used alsa yet mainly for the reason that it lacks USB
midi drivers. I am still waiting for a sequencer interface shakedown.
until then all my tools use a combination of /dev/midi and /dev/rtc to
do sequencing. oddly enough it works rather well despite its obvious
hackishness.
        John

On Thu, Jan 03, 2002 at 02:34:40PM -0500, Paul Davis wrote:
> >able to get ALSA midi support working. The documentation is woefully
> >out of date. I do remember seeing another installation howto from someone
> >in New Zealand but I couldn't find that information when I needed it.
>
> did you bother to ask on alsa-users?
>
> >Finally, I dont think that ALSA supports USB midi devices and therefore
> >these devices would be outside the ALSA midi framework.
>
> AFAIK, almost no USB MIDI device is properly supported under
> Linux. It has nothing to do with ALSA. the manufacturers of such
> devices have been remarkably reluctant to release the information
> needed to make their devices usable, despite the fact that we can
> obviously read the bit stream they deliver to a USB port.
>
> I am not sure what ALSA's handling of USB MIDI will look like. Right
> now, I believe that in the ALSA *device drivers* all physical MIDI
> ports are assumed to be handled by kernel code belonging to ALSA
> (i.e. devices on audio interfaces, etc.). For USB and IEEE1394, this
> is obviously not the case, and hence there will be probably need to be
> some new user space code added to the ALSA *library* to support
> devices that are accessed and controlled without any ALSA kernel code
> (just the standard USB and IEEE1394 device drivers).
>
> For applications that use ALSA's MIDI API (snd_rawmidi_foo()) or the
> sequencer API (snd_seq_foo()), both sets of device classes would
> appear completely identical.
>
> Its key to remember this - unlike OSS, ALSA includes a user-space
> library to handle issues like this. Under OSS, there is no way to make
> a USB MIDI device appear at /dev/midi without removing /dev/midi and
> using some kind of wierd symlink. OSS doesn't offer any API that isn't
> part of POSIX (open/read/write/close/ioctl) and uses plain file
> descriptors to identify the "target" of all actions. file descriptors
> ultimately point to device drivers in the kernel. since USB MIDI
> devices would be accessed via a USB device driver, not an OSS one, you
> can't use OSS nodes like /dev/midi to access them. Under ALSA, you
> don't use file descriptors like this - you use names, and the ALSA
> library will figure out how to access things for you and provide a
> uniform API for doing so.
>
> --p
>
>
>
>

-- 
---------------------------------------------------------------------------
John Meacham - California Institute of Technology, Alum. - john_AT_repetae.net
---------------------------------------------------------------------------


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Fri Jan 04 2002 - 10:49:37 EET