[linux-audio-user] Re: [Alsa-devel] Please explain Alsa Interface MIDI numbering PLEASE!

Mark Knecht markknecht at attbi.com
Mon Feb 17 11:38:00 EST 2003


Clemens,
   Thanks. This is helpful, although questions remain. FYI - my machine
doesn't have pmidi, so I cannot run that now.

[mark at Godzilla mark]$ aconnect -io
client 0: 'System' [type=kernel]
    0 'Timer           '
    1 'Announce        '
client 64: 'External MIDI 0' [type=kernel]
    0 'MIDI 0-0        '
   32 'MIDI 0-1        '
client 72: 'External MIDI 1' [type=kernel]
    0 'Midisport 2x2 Port 0'
    1 'Midisport 2x2 Port 1'
    2 'Midisport 2x2 Port 2'
    3 'Midisport 2x2 Port 3'
[mark at Godzilla mark]$


   The above information is certainly a bit more readable, but it seems
to still be, at the least, inconsistent.

1) For client 64, which is an HDSP 9652, there are two rawmidi ports.
However, the info above says they are labeled '0' and '32'. Should they
not be 0 & 1? If this is an error, then what needs to be fixed? The HDSP
9652 driver?

2) Why does the HDSP 9652 not tell me its name like the MidiSport does?

   The MidiSport info above is with the Win2K firmware installed as per
your extraction program. It actually didn't change from the way Fernando
had me install it, so I suppose that his installation had the real
Midiman firmware and not the open source firmware. Apparently I'll
continue to get the wrong number of ports on that device until I can get
Alsa itself upgraded.

Thanks,
Mark


On Mon, 2003-02-17 at 01:21, Clemens Ladisch wrote:
> Mark Knecht wrote:
> > 1) In the screen shot "without_2x2.png" I see two read ports and two
> > write ports. Please explain why they are called
> >
> > 64:0 External MIDI 0
> > 64:32 External MIDI 0
> >
> > Why is my HDSP given the apparent name '64'?
> 
> This isn't the name, it's the sequencer client number. In theory, it
> should not be necessary to identify devices by this.
> 
> 0-63 are reserved for the ALSA core. 64-127 are used by sound cards, with
> each card getting 8 (64-71, 72-79, etc.). 128-255 are for use by
> applications.
> 
> > Why the :0 and :32? I would have thought :0 and :16 would make more
> > sense from a channel numbering point of view, or :0 and :1 from an
> > interface point of view. What's going on?
> 
> These ports are not native sequencer ports implemented directly by the
> driver but are emulated on top the rawmidi ports. There can be 256 ports
> per sequencer client, and 8 rawmidi devices per card, so each rawmidi
> device (which can have an unspecified number of subdevices=ports) is
> mapped to a group of 32 (256/8) sequencer ports.
> 
> If the two rawmidi ports would have been subdevices of one device, they
> would have been mapped to port numbers :0 and :1.
> 
> >    How can I change the names that are displayed so that
> > "64:0 External MIDI 0" shows the name "HDSP 9652 Port 1"
> > "64:32 External MIDI 0" shows the name "HDSP 9652 Port 2"
> > "72:0 External MIDI 1" shows the name "MidiSport 2x2 Port A"
> > "72:1 External MIDI 1" shows the name "MidiSport 2x2 Port B"
> 
> "External MIDI x" is the client name, which is the same for all ports of
> the same client. It seems that kaconnect doesn't show the port name, which
> would be what you want. Please complain to the author of kaconnect. :-)
> 
> To show the port names, run "aconnect -io" or "pmidi -l".
> 
> 
> HTH
> Clemens
> 
> 





More information about the Linux-audio-user mailing list