Re: association between MIDI client:port and device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> Am Montag 01 März 2010 16:19:58 schrieb J. Pauli:
>>> 	Hi!
>>> 	
>>>     The commands "amidi -l" and "aplaymidi -l" report a list of raw MIDI
>>>     ports
>>>
>>> and a list of client:port pairs, respectively. Is there any tool to find
>>> out the association between these (i.e., find out the client:port pair
>>> for a given raw MIDI port and vice versa)? Matching the names in the
>>> lists only works as long as there are no two devices of the same name.
>>>
>>> 	Thanks & kind regards,
>>> 	
>>> 		Markus
>>
>> Hi,
>>
>> the association between client-ids and cards is
>> card_number=(client_id-global_clients)/clients_per_card (integer
>> division). The values for global_clients and clients_per_card are 16 and
>> 4 or if you want to be 110% sure, have a look at your kernel source tree
>> at sound/core/seq/seq_clientmgr.c at line 57 (or something nearby
>> depending on your kernel version). But I think raw MIDI ports are
>> associated with cards only and not with client:port pairs.
> Thanks a lot, this information solves 99% of my problem! The remaining 1% is 
> that I would still prefer to look up the mapping somewhere since it seems 
> somewhat arbitrary, and if it changes in the future (e.g., to allow for more 
> clients per card, like "640kB ought to be enough for everyone"), it will break 
> software which uses the (hard-coded) current mapping. Any ideas about that?
> 
> 	Thanks & kind regards,
> 		Markus
> 
> 

Well, have a look at the file sound/core/seq/seq_clientmgr.c in your
kernel source tree. This time at line 170:

int card = (clientid - SNDRV_SEQ_GLOBAL_CLIENTS) /
       	   SNDRV_SEQ_CLIENTS_PER_CARD;

Alsa is doing exactly this (if I understand the code correctly). So the
solution to your problem would be to write a little script, which
extracts these two values and then computes the card number.

Cheers, Jan

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Alsa-user mailing list
Alsa-user@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-user


[Index of Archives]     [ALSA Devel]     [Linux Audio Users]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]

  Powered by Linux